MySql查询语法错误c#

时间:2017-07-20 12:25:27

标签: mysql

"INSERT IGNORE INTO DataBase.Table
(OrderNumber, CCHolder, CCPartial, CCEci, CCTransDate, 
CCPmtRef,CCStatus,CCMaster) " +
"VALUES (@orderNumber, @CCholder, 
@CCpartial, @CCeci, @CCtransDate, @CCpmtRef, @CCstatus, 
@CCmaster) " +
"WHERE @CCmaster NOT EXISTS (SELECT CCMaster FROM 
DataBase.Table)";

每次我插入新数据时我都需要CCMaster保持独特,尝试各种方式IF,不喜欢但没有任何作用。

2 个答案:

答案 0 :(得分:2)

这里没有足够的背景。对你来说这看起来不是一个好的解决方案,但是你尝试过像

这样的东西

WHERE @CCmaster not in (SELECT CCmaster FROM DATABASE.Table)

答案 1 :(得分:1)

问题是WHERE语句中的INSERT部分是错误的"WHERE @CCmaster NOT EXISTS ...。您使用INSERT INTO .. VALUES构造或使用INSERT INTO .. SELECT FROM .. WHERE构造但不能将它们混合使用。如果您使用WHERE构造,INSERT INTO .. VALUES子句不是应用程序。您可能想要更改您的查询,如

INSERT IGNORE INTO DataBase.Table
(OrderNumber, CCHolder, CCPartial, CCEci, CCTransDate, 
CCPmtRef,CCStatus,CCMaster) 
SELECT @orderNumber, @CCholder, 
@CCpartial, @CCeci, @CCtransDate, @CCpmtRef, @CCstatus, 
@CCmaster FROM DataBase.Table
WHERE @CCmaster <> CCMaster