zoukankan      html  css  js  c++  java
  • PHP 多个mysql连接的问题

    今天在同一个php进程中用mysql_connect新建了两个mysql句柄,这两个句柄都连接同一台数据库,只不过操作的数据库 dbname不同,假设这两个句柄分别是$dbhA和$dbhB,它们对应的数据库dbname分别是dbA和dbB。我在$dbhA上操作dbA中的时 候缺报错是dbB中没有表xxx。。。

    起初以为是我应用层逻辑处理在某个地方弄混了两个句柄,翻半天没翻出来,后来在 这里 发现了同样的问题。

    原来是mysql_connect的实现中,如果再次调用它时操作的是同一个数据库,那么会返回第一次调用mysql_connect返回的那个句柄。所以在同一个PHP进程中对同一个数据库创建多个连接时,应该这么搞:

    $db1 = mysql_connect($host1, $user1, $passwd1, true);
    $db2 = mysql_connect($host2, $user2, $passwd2, true);

    http://php.net/manual/zh/function.mysql-connect.php 这里有对第四个参数的详细解释:

    如果用同样的参数第二次调用 mysql_connect(),将不会建立新连接,而将返回已经打开的连接标识。参数 new_link 改变此行为并使  mysql_connect() 总是打开新的连接,甚至当  mysql_connect() 曾在前面被用同样的参数调用过。

  • 相关阅读:
    使用NetworkX进行社交分析
    文本情感分析
    使用NLTK进行基础的NLP处理
    使用pandas对文本数据进行处理
    文本处理
    分类器可视化
    无监督学习
    监督学习2
    模型验证
    Netty学习摘记 —— 预置SSL / HTTP / WebSocket编解码器
  • 原文地址:https://www.cnblogs.com/www886/p/4223917.html
Copyright © 2011-2022 走看看