<?
include 'database.php';
$user1 = mysql_query("SELECT id,username FROM `users` ORDER BY `id` ASC");
while($user = mysql_fetch_object($user1)) {
mysql_query("UPDATE `pokemon` SET `user`=$user->id WHERE `owner`='$user->username'");
}
?>
基本上,我的游戏中有超过 300,000 的用户,并且有数百万的“Pokemon”。
我正在考虑使用整数作为外键而不是字符串,因此我创建了这个小脚本来为我做这件事。
不幸的是,它似乎在过去一个小时内只更新了 1000 个用户,因此我需要 300 个小时才能完成整个事情。有没有办法让这个脚本更有效率?
user
是新的唯一标识符,而owner
是旧的唯一标识符(外键)。
我的方法是否有需要不到 3-4 小时时间的替代解决方案?我确信一定有一些不错的小 SQL 查询,我可以通过 phpMyAdmin 执行而不是使用这段代码。
感谢所有的帮助,真的很感激,我一定会尽可能回报。
编辑:感谢您教我这项新技术,我会尝试并更新我的线程。