所以我想,以填补我的表了数据,但我不断收到此错误:SQLSTATE [23000]:完整性约束违规:1048列“teamName”不能为空
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'teamName' cannot be null
奇怪的是如果我回显出$ myarray [1],它会循环显示每个团队的名字,所以我不明白为什么我在阅读数据时遇到这么多问题?数组显然不包含null?
这里的表的创建:
$createQuery ="CREATE TABLE TeamTable
(
teamID INT(6) NOT NULL AUTO_INCREMENT,
teamName VARCHAR(60) NOT NULL,
Flag BLOB,
Country VARCHAR(30) NOT NULL,
PRIMARY KEY(teamID)
)";
$pdo->exec($createQuery);
这里就是我想要插入到表:
$filet = fopen("team.csv", "r");
while(!feof($filet))
{
$myarray = fgetcsv($filet);
$insertTeamQuery ="INSERT into TeamTable(teamName, Country, Flag) VALUES(:val1,:val2,:val3)";
$stmt = $pdo->prepare($insertTeamQuery);
echo $myarray[1];
$stmt->execute(array(':val1' => $myarray[1], ':val2' => $myarray[2], ':val3' => $myarray[3]));
$stmt->execute();
}
fclose($filet);
我的phpMyAdmin的检查,还有,就是要6支球队,但是我有每支球队中有两支是奇怪的?不知道为什么它将相同的值在每个循环中放入两次?但是如果它填满了,它显然填满了表格,所以我不明白这个错误,它说它是空的?一直在努力与这一个相当长一段时间
如果任何人有任何想法有什么问题,我将不胜感激一些帮助,提前致谢! :)
噢,当然,我的不好,这是解决了重复问题,谢谢,但在我原来的帖子顶部的其他错误仍然存在,即使在PHPMyAdmin视图表中看起来像我期望填充的tho th?我在努力了解在表格中,“TeamName”是如何为空的,我的所有6个球队都有一个球队名称?但我仍然收到错误。 –
可以请你加'的print_r($ stmt-> errorInfo中());'execute'后'和共享所表现出比指定的错误 –
这里其他的输出: 阵列([0] => 00000 [1 )Array([0] => 00000 [1] => [2] =>)Array([0] => [1] => [2] =>数组([0] => 00000 [1] => [2] =>)数组([0] => [1] => [2] => ) –