我遇到了查询/数据完整性问题。
我正在从MySQL数据库中读取大量数据(许多千兆字节),使用PHP处理它们,将它们重新插入到完全不同的表中的同一数据库中。这是从旧数据结构到新数据结构的单次转换,需要即时修改大量值。
SELECT FROM x
- > modify in PHP
- > INSERT INTO y
方式太慢了。每1000条记录大约需要1秒钟,我们在这里谈的数千万。这就是为什么我决定将每个INSERT
导出到text / sql文件中的原因。
但是,最安全的方式是什么?数据是从布尔到BLOB的所有内容。我不能确定它里面有什么,什么不是,但是一切都需要适当地重新定位,包括引号,斜线等。
如何在没有任何数据丢失的情况下逃脱?
答案 0 :(得分:1)
您可以使用预准备语句来避免转义数据。
您为预准备语句创建的查询可以作为一个组连接和执行,而不是每行都有一个执行调用。
创建,分组和创建的代码将SQL语句连接在一起应该允许您轻松选择组中连接的语句数,这样您就可以在一个exec调用中试验100个语句,在一个exec调用中试验1000个语句。
结果应该会好得多。