2013-02-06 48 views
-3

我算我的領域,檢查了我的類型等 這是第一個多行insert.Why不會這樣的:又一「你有一個錯誤的SQL語法」

(6972561736,'2013-02-06 04:29:17',85,'CONCORD',1000125,'First Last',92596384,'Airmia',30000166,11000.00,175697113.47,'21656:2,',,,92596384) 

適合在

Table xact  
==========  
refID, date, refTypeID, ownerName1, ownerID1, ownerName2, ownerID2, argName1, argID1, amount, balance, reason, taxReceiverID, taxAmount, charID 

---------- 

refID   int(11) PK  
date    datetime  
refTypeID  bigint(20)  
ownerName1  varchar(45)  
ownerID1   int(11)  
ownerName2  varchar(45)  
ownerID2   int(11)  
argName1   varchar(45)  
argID1   int(11)  
amount   decimal(16,4)  
balance   decimal(16,4)  
reason   varchar(64)  
taxReceiverID int(11)  
taxAmount  decimal(16,4)  
charID   int(11) 

實際的錯誤:

...正確的語法使用近」,92596384),(6972540458 '2013年2月6日04:23:30',34 ,'Istei Poyri',3018350,'First'at line 1

6972540458是下一個記錄的開始......

完整的查詢是8355個字符,所以我希望我已經給了足夠的數據。

+2

是'',,,有效的語法?我從來沒有試過。 –

+0

將''21656:2,',,, 92596384)'改爲''21656:2','',,'',92596384)''我想你不需要把小數類型的''' 。 – scc

+0

按https://dev.mysql.com/doc/refman/5.5/en/insert.html - 如果您沒有以嚴格SQL模式運行,那麼沒有明確給出值的列將被設置爲其默認值(顯式或隱式)值。 – user916499

回答

1

如果沒有數據,一列,然後添加null(如果允許)或默認值,而不是沒有像

,,,92596384) 
^-----------------here 
+0

你讓我困惑與你的新gravatar。 :) – Taryn

+0

耶 - 還是我。新的和改進:) –

+0

該字段的默認值爲空,我假設即使沒有設置mysql模式,它也必須默認爲嚴格。這在以前的版本中運行良好... – user916499

0

沒有看到完整的錯誤,我會建議更換,,,null值:

,'21656:2,',null,null,92596384) 
0

嘗試傳遞的NULL或空引號'',而不是你的逗號之間沒有任何東西。

(6972561736,'2013-02-06 04:29:17',85,'CONCORD',1000125,'First Last',92596384,'Airmia',30000166,11000.00,175697113.47,'21656:2,',NULL,NULL,92596384) 

可能是因爲你也有在那裏野生逗號後21656:2

(6972561736,'2013-02-06 04:29:17',85,'CONCORD',1000125,'First Last',92596384,'Airmia',30000166,11000.00,175697113.47,'21656:2',NULL,NULL,NULL,92596384) 
0
check '21656:2' and you had added an extra column 

    (6972561736,'2013-02-06 04:29:17',85,'CONCORD',1000125,'First Last',92596384,'Airmia',30000166,11000.00,175697113.47,'21656:2',,,92596384) 
+0

這是太多的值/逗號。 – Guffa

+0

逗號在引號內。又名字符串的一部分... – user916499