【发布时间】:2018-12-19 11:18:05
【问题描述】:
我想运行 mysql 查询以从自定义 html 表单中插入数据。
在这里,我必须插入多组数据,一些数据到一个表,一些数据到另一个表。目前我正在使用简单的方法使用jquery ajax将数据发送到php页面并一个接一个地运行多个mysqli_query()函数。但是我猜当用户数量很大的时候,就会出现与速度有关的问题。所以任何人都可以建议我一个更好的方法来做同样的事情。
数据库中有5个表,每个表有7到10列,每次需要获取不同的数据集。
我只想在前一个插入查询成功完成的情况下运行每个查询。 这就是为什么我每次都检查结果然后运行下一个查询的原因,这让我感到在庞大的用户群中速度问题。
【问题讨论】:
-
您可以将所需的所有数据传递到服务器并在单个查询中合并您的数据
INSERT INTO myTable(id, anything, ...) VALUES (id, any, ...), (id2, any2, ...),(id3, any3, ...),... -
@Nitro.de,我想将数据添加到多个表中。它不像我想在同一个表中添加多行。请给我一些好的方法来做到这一点。
-
@VikashMishra 抱歉应该更好地阅读.. 使用事务然后
mysqli_begin_transaction完成后接着mysqli_commit或看这里stackoverflow.com/questions/5178697/… -
目前瓶颈在哪里?这只是一个假设的问题吗?如果出现错误,事务将有助于还原,我认为它对插入每个表的速度没有帮助。