0

我有一个 txt 文件,其中包含 1 行\t数据,文件中的数据通过循环更新,最后在此循环中将其放入表中。我正在使用的当前数据有 24 列和 25 行,除了具有相同第一个值的 2 行之外,它都可以正常输入;其中只有 1 个被输入。

我没有启用任何设置为主键或唯一值,但它只是没有进入具有相同第一个值的行,即使值 3,4 和 5 也都相同。

这是完整的代码:

<?php
$conn = mysql_connect('localhost', 'root', '');
mysql_select_db('amazondb', $conn);

mysql_query ("TRUNCATE TABLE imported_orders"); 

$lines = file('F:/xamptest/htdocs/UniProject/upload/Amazon output.txt');
$lineCount = count($lines);
for ($arrayCounter=0; $lineCount>$arrayCounter; $arrayCounter++)
{
    $lineEx = explode("\t", $lines[$arrayCounter]);         
    $lineEx[2] = substr($lineEx[2], 0, -15); 
    $lineEx[3] = substr($lineEx[3], 0, -15);
    $lineEx[4] = substr($lineEx[4], 0, -15);
    $lineEx[5] = substr($lineEx[5], 0, -15);        
    $arri = implode("\t",$lineEx);      
    file_put_contents('upload/ImportLine.txt', $arri);
    $r = mysql_query ("LOAD DATA INFILE 'F:/xamptest/htdocs/UniProject/upload/ImportLine.txt' INTO TABLE imported_orders FIELDS TERMINATED BY '\t'", $conn);        
    echo "Array Counter Loop: ".$arrayCounter." Order ID: ".$lineEx[0]."<br>";              
}   
echo "<br>WLoop has ran: ".$arrayCounter." Times";  
?>

即使只使用一个循环和它自己的单行文件,它也只是添加一行,我尝试添加第一列作为 PK 自动增量,这不起作用我假设它会并尝试将第一个值从里面的文件-.-'

这让我难过了好几天,因为没有明显的理由让它不起作用,理想情况下,我想INSERT直接使用内爆数组值并\t像现在一样定义值,但是从我搜索到的内容似乎不可能。

编辑:将值 1 和 2 设为复合主键,有效,但现在无效。再次运行它,第 6 次,现在只再次输入 24 行 -.-'

很抱歉我明显缺乏 php 和 sql 的经验。

谢谢你的帮助。

4

0 回答 0