当前位置: 首页> 最新文章列表> mysqli::select_db函数的基本语法是什么?详细讲解使用方法

mysqli::select_db函数的基本语法是什么?详细讲解使用方法

gitbox 2025-08-11

<span><span><span class="hljs-meta"><?php</span></span><span> </span><span><span class="hljs-comment">// 这部分代码与文章内容无关,仅作为示例</span></span><span> </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"欢迎阅读本篇PHP教程。"</span></span><span>; </span><span><span class="hljs-meta">?></span></span><span> <hr> <h1>mysqli::</span><span><span class="hljs-variable constant_">select_db</span></span><span>函数的基本语法是什么?详细讲解使用方法</h1> <p>在PHP中,使用MySQLi扩展进行数据库操作时,切换数据库是常见的需求。<code>mysqli::</span><span><span class="hljs-variable constant_">select_db</span></span><span>

  • :要切换到的数据库名称。
  • 返回值为 TRUE 表示切换成功,FALSE 表示失败。

使用说明

当你使用 new mysqli(...) 连接数据库时,通常会指定一个默认数据库。但在某些情况下,你可能需要在同一个连接中切换不同的数据库,这时就可以调用 select_db

示例代码

&lt;?php
</span><span><span class="hljs-comment">// 创建MySQLi连接,默认数据库为db1</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-string">"localhost"</span></span><span>, </span><span><span class="hljs-string">"root"</span></span><span>, </span><span><span class="hljs-string">"password"</span></span><span>, </span><span><span class="hljs-string">"db1"</span></span><span>);

</span><span><span class="hljs-comment">// 检查连接是否成功</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"连接失败: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error);
}

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"当前数据库为: db1\n"</span></span><span>;

</span><span><span class="hljs-comment">// 切换到db2数据库</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">select_db</span></span><span>(</span><span><span class="hljs-string">"db2"</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"成功切换到数据库 db2\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"切换数据库失败: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->error;
}

</span><span><span class="hljs-comment">// 后续可以在db2上执行查询</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-string">"SELECT * FROM table_in_db2"</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$result</span></span><span>) {
    </span><span><span class="hljs-keyword">while</span></span><span> (</span><span><span class="hljs-variable">$row</span></span><span> = </span><span><span class="hljs-variable">$result</span></span><span>-></span><span><span class="hljs-title function_ invoke__">fetch_assoc</span></span><span>()) {
        </span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$row</span></span><span>);
    }
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"查询失败: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->error;
}

</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
?&gt;

注意事项

  • 调用 select_db 前,连接必须已成功建立。
  • 切换数据库不会关闭当前连接,而是更改连接使用的数据库上下文。
  • 如果指定的数据库不存在,函数会返回 FALSE,并通过 $mysqli->error 获取错误信息。

总结

mysqli::select_db 是MySQLi面向对象方式中切换数据库的函数,适用于同一连接需要操作多个数据库的场景。掌握它可以使你的数据库操作更加灵活。