通過65536
到mysql_connect
作爲第五參數。
例子:
$conn = mysql_connect('localhost','username','password', true, 65536 /* here! */)
or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
INSERT INTO table1 (field1,field2) VALUES(1,2);
INSERT INTO table2 (field3,field4,field5) VALUES(3,4,5);
DELETE FROM table3 WHERE field6 = 6;
UPDATE table4 SET field7 = 7 WHERE field8 = 8;
INSERT INTO table5
SELECT t6.field11, t6.field12, t7.field13
FROM table6 t6
INNER JOIN table7 t7 ON t7.field9 = t6.field10;
-- etc
");
當你與mysql_fetch_ *或mysql_num_rows,或mysql_affected_rows工作,只有第一條語句是有效的。
例如,下面的代碼中,第一條語句是INSERT,不能執行mysql_num_rows和mysql_fetch_ *。 可以使用mysql_affected_rows返回插入的行數。
$conn = mysql_connect('localhost','username','password', true, 65536) or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
INSERT INTO table1 (field1,field2) VALUES(1,2);
SELECT * FROM table2;
");
另一個例子,下面的代碼,第一條語句是SELECT,你不能執行mysql_affected_rows。但是您可以執行mysql_fetch_assoc來獲取第一個SELECT語句產生的鍵值對行,或者您可以執行mysql_num_rows以基於第一個SELECT語句獲取行數。
$conn = mysql_connect('localhost','username','password', true, 65536) or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
SELECT * FROM table2;
INSERT INTO table1 (field1,field2) VALUES(1,2);
");
讓一個'$ query',只是確保你添加一個','每行之後。 – Pitchinnate
爲什麼你需要這個?大多數情況下,可讀性比效率低很重要。 – Muatik
請不要在新的應用程序中使用'mysql_query'。它已被棄用和危險。至少在使用PDO確保[數據正確轉義](http://bobby-tables.com/php)之前,由於SQL注入漏洞而導致嚴重麻煩。 – tadman