我在编写查询字符串时遇到了一些麻烦,以更新特定的sql记录。 我将所有值存储在字符串中,并且我添加它们(值作为参数),它将主要ID转换为int。到目前为止,非常好。
问题出在我的查询字符串中。我可以删除和创建sql记录(选择和插入)但这里的问题在于更新。我没有真正的经验。
现在......对于我已准备就绪的查询字符串......
SqlCommand DerGemmesMedarbejder = new SqlCommand("UPDATE MyTableInQuestion VALUES (@Tittel, @FuldeNavn, @MailAdresse, @TelefonNummer, @MedarbejderType) WHERE PersonaleID = @PersonaleID_FraRepeateren", GemDetAendredeIndhold);
我似乎无法做对。调试器告诉我问题是“jeyword'VALUES'附近的语法不正确
答案 0 :(得分:4)
试试这个
SqlCommand DerGemmesMedarbejder = new SqlCommand("UPDATE MyTableInQuestion set title=@Tittel, FuldeNavn=@FuldeNavn, ... WHERE PersonaleID = @PersonaleID_FraRepeateren", GemDetAendredeIndhold);
答案 1 :(得分:3)
尝试此查询 -
UPDATE MyTableInQuestion
SET
Tittel = @Tittel
, FuldeNavn = @FuldeNavn
, MailAdresse = @MailAdresse
, TelefonNummer = @TelefonNummer
, MedarbejderType = @MedarbejderType
WHERE PersonaleID = @PersonaleID_FraRepeateren
答案 2 :(得分:0)
因为语法不正确。 语法here
对于更新语句,您必须将查询更改为:
UPDATE MyTableInQuestion SET Column1 = @Tittel, Column2 = @FuldeNavn, Column3 = @MailAdresse, Column4 = @TelefonNummer, Column5 = @MedarbejderType WHERE PersonaleID = @PersonaleID_FraRepeateren"
Column1-5是你的列名
答案 3 :(得分:0)
您的update命令语法无效。您可能会对插入和更新命令
感到困惑更新命令就像这样
UPDATE MyTableInQuestion set title=@Tittel, FuldeNavn=@FuldeNavn where PersonaleID = @PersonaleID_FraRepeateren