2015-06-14 3 views
-1

Я написал код C# для обновления некоторого столбца таблицы SQL-сервера. Название таблицы «finalfee». Когда я пытаюсь выполнить код, он показывает синтаксическую ошибку. Почему это происходит?Ошибка синтаксиса при попытке обновить некоторый столбец таблицы

SqlConnection con23 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); 
        con23.Open();  
SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"')", con23); 
         cmd10.ExecuteNonQuery(); 

ответ

0

удалите последний «)» в своей Команде.

SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"'", con23); 

Вы должны использовать параметры.

Edit:

удалить ')' здесь: admno = '"+ TextBox56.Text +' ) "

+0

Какой я должен удалить, я не получаю вас –

+0

Да, прошу поблагодарить u –

+0

Нет проблем. Рассмотрите возможность использования параметров для предотвращения Sql Injection. – mxix

0
SqlConnection con23 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); 
        con23.Open();  
SqlCommand cmd10 = new SqlCommand("update finalfee SET amountpaid='" + t26 + "',discountamount='" + t30 + "',grandamount='" + t27 + "',balanceamount='"+t28+"' where admno='"+TextBox56.Text+"'", con23); 
         cmd10.ExecuteNonQuery(); 
0

Существует закрывающая скобка без открытия одного +" «)»

Создание команды путем объединения строк может создать много проблем. Рассмотрим с помощью параметров команды.

SQLCommand Parameters

Смежные вопросы