我有一个来自一个 mysql db 的大表,我想在不同的 mysql db 中创建一个新表并从大表中复制 3 列。为此,我编写了以下代码:
$result = mysql_query("SELECT * FROM huge_table", $hugeDB);
$count = mysql_result($result, 0);
$iterations=ceil($count/500);
for($i=1; $i<=$iterations; $i++)
{
$start = ($i-1)*500;
$query = mysql_query("SELECT col1, col3, col6 FROM huge_table LIMIT $i, 500", $hugeDB);
$results = array();
$j = 0;
while($result = mysql_fetch_array($query)) {
$result[$j]= '('.$result['col1'].', '.$result['col3'].', '.$result['col6'].')';
$j++;
}
print_r($results);
$a = mysql_query("INSERT INTO less_huge_table (col1, col3, col6) VALUES ".implode(',', $results), $localDB);
if(!$a) die(mysql_error()."\n");
}
但随后的输出是:
Unknown column 'BTFG' in 'field list'
其中 BTFG 是数组的第一个元素的项:
(2007-01-03, BTFG, 23.0481)
我想我犯了一个小错误,但我无法抓住。
我应该如何解决这个问题?
谢谢