3

我必须在两个不同的数据库表中插入数据。我为database1创建了database1和table1,也为database2创建了database2和table2。

为了插入数据,我编写了代码,

$connect = mysql_connect("localhost","root",""); //database connection

mysql_select_db("database1",$connect); // select database1 
mysql_select_db("database2",$connect); // select database2 

$sql = mysql_query("INSERT INTO database1.table1 (contact_first, contact_last, contact_email) VALUES('abc','xyz','abc@abc.com')"); //insert record to first table
$sql1 =mysql_query("INSERT INTO database2.table2 (contact_first, contact_last, contact_email) VALUES('abc','xyz','abc@abc.com')"); //insert record to second table

请建议我对上述代码进行更正以插入数据。

4

5 回答 5

2

试试下面的代码:

$connect1 = mysql_connect("localhost","root","");
mysql_select_db("database1", $connect1);
$res1 = mysql_query("query",$connect1);

$connect2 = mysql_connect("localhost","root","",true);
mysql_select_db("database2", $connect2);
$res2 = mysql_query("query",$connect2);  

注意:所以 mysql_connect 有另一个可选的布尔参数,指示是否创建链接。当我们将此可选参数设置为“true”连接到 $connect2时,两个链接都将保持活动状态。

于 2013-07-22T13:31:34.100 回答
1

只需连接到 1 个数据库,插入新行,断开连接,连接到另一个数据库,将行插入该数据库并断开连接。

或者您可以使用$connect1and$connect2分别引用它们中的每一个并并行插入。

编辑:顺便说一句,您可以选择带有第 4 个参数的数据库mysql_connect,无需使用mysql_select_db

非常重要的是,你应该写mysqlinot mysql。因为mysql功能将不再受支持。

于 2013-07-22T13:21:58.040 回答
0

首先创建两个数据库连接

$connect1 = mysql_connect("localhost","root",""); 
$connect2 = mysql_connect("localhost","root",""); 

然后为每个连接选择数据库。

mysql_select_db("database1",$connect1); // select database1 
mysql_select_db("database2",$connect2); // select database2 

然后传入第二个参数,mysql_query该参数是查询的相应连接。

mysql_query("SELECT ... ", $connect1);
mysql_query("SELECT ... ", $connect2);
于 2013-07-22T13:24:22.517 回答
0

好吧,如果数据库名称中存在模式,表和查询完全相同,则可以使用循环:

for ($i = 1; $i <=2; $i++) {
    mysql_select_db("database".$i, $connect); 
    $sql = mysql_query("INSERT INTO table".$i." (contact_first, contact_last, contact_email) VALUES('abc','xyz','abc@abc.com')");
    mysql_close;
}

但是,强烈不推荐使用 mysql_*,因为它在上一个稳定的 PHP 版本中已被弃用,并且被认为是不安全的。请改用 PDO 或 MySQLi。PHP官网建议文章“Choosing an API”:http ://www.php.net/manual/en/mysqlinfo.api.choosing.php

于 2013-07-22T13:28:19.290 回答
0

嗯,我就是这样做的...

1 - 连接 --> 你做对了 2 - 检查错误 3 - 使用数据库 (1) 你想将数据放入(而不是“选择”) 4 - 检查错误 5 - 现在将项目插入数据库正在使用 - 即 (1) 6 - 检查错误 7 - 使用其他数据库 (2) 8 - 检查错误 9 - 将数据插入 (2) - 因为这是现在正在使用的数据库 10 - 检查对于错误

是的,要偏执:P希望这会有所帮助

于 2013-07-22T13:30:19.993 回答