Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#中带有保留字的SQL Update语句_C#_Sql_Sql Update_Reserved Words - Fatal编程技术网

c#中带有保留字的SQL Update语句

c#中带有保留字的SQL Update语句,c#,sql,sql-update,reserved-words,C#,Sql,Sql Update,Reserved Words,我对update语句有问题: UPDATE WIG_BANKI SET "Nazwa_spolki" = @BankNames, "Pakiet" = @Packet, "Udzial_w_portfelu[%]" = @ShareInPortfolio, "Udzial_w_obrocie[%]" = @ShareOfTurnover, "Wplyw_na_zmiane_indeksu[%]" = @ImpactOnChangeOfIndex, "Zmiana_kursu_spol

我对update语句有问题:

UPDATE WIG_BANKI 
SET "Nazwa_spolki" = @BankNames, 
"Pakiet" = @Packet, 
"Udzial_w_portfelu[%]" = @ShareInPortfolio, 
"Udzial_w_obrocie[%]" = @ShareOfTurnover, 
"Wplyw_na_zmiane_indeksu[%]" = @ImpactOnChangeOfIndex, 
"Zmiana_kursu_spolki[%]" = @ExchangeRate, 
"Kurs[PLN]" = @PLN_ExchangeRate 
 WHERE "Nazwa_spolki" != @BankNames, 
       "Pakiet" != @Packet, 
       "Udzial_w_portfelu[%]" != @ShareInPortfolio, 
       "Udzial_w_obrocie[%]" != @ShareOfTurnover, 
       "Wplyw_na_zmiane_indeksu[%]" != @ImpactOnChangeOfIndex, 
       "Zmiana_kursu_spolki[%]" != @ExchangeRate, 
       "Kurs[PLN]" != @PLN_ExchangeRate
在列名中,我有如下字符:%,[]。在“insert-into”语句中,我只是把它用引号括起来,然后开始工作。但无法执行此update语句:

UPDATE WIG_BANKI 
SET "Nazwa_spolki" = @BankNames, 
"Pakiet" = @Packet, 
"Udzial_w_portfelu[%]" = @ShareInPortfolio, 
"Udzial_w_obrocie[%]" = @ShareOfTurnover, 
"Wplyw_na_zmiane_indeksu[%]" = @ImpactOnChangeOfIndex, 
"Zmiana_kursu_spolki[%]" = @ExchangeRate, 
"Kurs[PLN]" = @PLN_ExchangeRate 
 WHERE "Nazwa_spolki" != @BankNames, 
       "Pakiet" != @Packet, 
       "Udzial_w_portfelu[%]" != @ShareInPortfolio, 
       "Udzial_w_obrocie[%]" != @ShareOfTurnover, 
       "Wplyw_na_zmiane_indeksu[%]" != @ImpactOnChangeOfIndex, 
       "Zmiana_kursu_spolki[%]" != @ExchangeRate, 
       "Kurs[PLN]" != @PLN_ExchangeRate
然后我执行整个语句,如下所示:

command.Parameters[Globals.columnsNamesArrayDB[i]].Value = array[i].ToString(); // here in for loop I set what is @BankNames etc.
command.CommandText = sbAllDataUpdate.ToString();
command.ExecuteNonQuery();
然后显示此错误消息

System.Data.SqlClient.SqlException (0x80131904): Incorrect syntax near ','.

我不知道如何更正
的,其中
使用逻辑运算符
和/或
分隔条件

 WHERE "Nazwa_spolki" != @BankNames AND
       "Pakiet" != @Packet AND
       "Udzial_w_portfelu[%]" != @ShareInPortfolio AND
       "Udzial_w_obrocie[%]" != @ShareOfTurnover AND
       "Wplyw_na_zmiane_indeksu[%]" != @ImpactOnChangeOfIndex AND 
       "Zmiana_kursu_spolki[%]" != @ExchangeRate AND 
       "Kurs[PLN]" != @PLN_ExchangeRate

对于
,其中
使用逻辑运算符
和或

 WHERE "Nazwa_spolki" != @BankNames AND
       "Pakiet" != @Packet AND
       "Udzial_w_portfelu[%]" != @ShareInPortfolio AND
       "Udzial_w_obrocie[%]" != @ShareOfTurnover AND
       "Wplyw_na_zmiane_indeksu[%]" != @ImpactOnChangeOfIndex AND 
       "Zmiana_kursu_spolki[%]" != @ExchangeRate AND 
       "Kurs[PLN]" != @PLN_ExchangeRate


你有没有试过把全名用方括号括起来。你们能发布你们的命令初始化是什么样子的吗?创建表可以工作,插入到也可以,所以命令初始化是可以的。不能放方括号,因为在名称中我有方括号,SQL也会给出错误。我不知道为什么会有3个反对票。。这是一个问得很好的问题。因为在第一种形式中,我把整个update语句放在一行中,我认为那是不可读的:),我的错误。你试过在全名周围放方括号吗。你们能发布你们的命令初始化是什么样子的吗?创建表可以工作,插入到也可以,所以命令初始化是可以的。不能放方括号,因为在名称中我有方括号,SQL也会给出错误。我不知道为什么会有3个反对票。。这是一个问得很好的问题。因为在第一种形式中,我把整个update语句放在一行中,我认为这是不可读的:),我的错误。我只是不知道为什么你没有从极其清晰的错误消息中得到;-)嘿,伙计,每个正在学习的人有时都会认为自己的问题是如此复杂,然后才意识到这是如此简单。@janek9971:对不起-我以为结尾的笑脸会表明我在开玩笑-你的SQL语句有这么多逗号(大部分是有效的)-所以报告“附近的语法不正确”,就等同于报告“不能这样做”.在这种情况下很有趣。我以为那是仇恨的微笑:D@janek9971:我认为SQL的人想让程序员受苦-MySQL错误消息同样有助于告诉您在查询中可能重复的某个字符串附近有错误-我已经使用它近10年了&我仍然收到错误消息,我很难处理,这不仅仅是初学者。参数化查询没有帮助,因为无法查看完整的查询,因此您无法轻松地从工作台“剪切并粘贴”运行。我只是不知道为什么您没有从极其清晰的错误消息中得到这些;-)嘿,伙计,每个正在学习的人有时都会认为自己的问题是如此复杂,然后才意识到这是如此简单。@janek9971:对不起-我以为结尾的笑脸会表明我在开玩笑-你的SQL语句有这么多逗号(大部分是有效的)-所以报告“附近的语法不正确”,就等同于报告“不能这样做”.在这种情况下很有趣。我以为那是仇恨的微笑:D@janek9971:我认为SQL的人想让程序员受苦-MySQL错误消息同样有助于告诉您在查询中可能重复的某个字符串附近有错误-我已经使用它近10年了&我仍然收到错误消息,我很难处理,这不仅仅是初学者。参数化查询没有帮助,因为无法查看完整查询,因此您无法轻松地从工作台“剪切粘贴”运行。