如何连接这两个查询并将它们作为单个查询执行,以在两个表中插入值:
$sql = mysql_real_escape_string('INSERT INTO admin_export(datetime, product_name, item_code,quantity,subject,export_no) VALUES').implode(',', $row_data);
$sql2 = "insert into `itflower_exportno` (admin_exportno) values('$exportno1')";
答案 0 :(得分:1)
您需要使用分号将两个INSERT语句分隔为单个变量。
自PHP 5.5.0起,此(mysql_ *)扩展名已弃用,将来将被删除。相反,应该使用MySQLi或PDO_MySQL扩展。切换到PreparedStatements可以更好地抵御SQL注入攻击!
但您可以使用以下示例进行交易。
BEGIN;
INSERT INTO users (username, password)
VALUES('test', 'test');
INSERT INTO profiles (userid, bio, homepage)
VALUES(LAST_INSERT_ID(),'Hello world!', 'http://www.stackoverflow.com');
COMMIT;
答案 1 :(得分:0)
代码中包含两个不同的插入内容。 MySQL不允许在同一查询中运行多个插入,因此您必须先执行一次,然后再执行另一次。
但是,您可以在一个查询中在同一个表中插入多行,基本上您只能在一个表中一次执行所需的所有插入。
答案 2 :(得分:0)
你不能这样做。 如果您因为害怕数据的完整性而想要这样做,请使用transaction。 其次,使用合适的transaction isolation level,以确保数据正确读取。