3Newbie97Programmer Ответов: 1

Как вставить данные из текстового поля в SQL server ? ГЛ.


После того, как я нажму на кнопку Отправить, моя страница обновится, но ничего не произойдет. В базе данных также нет записей. Не знаю, что пошло не так. нет сообщения об ошибке

Что я уже пробовал:

Dim connectionString As String
           Dim connection As SqlConnection
           Dim SQLcmd As New SqlCommand
           Dim logdate As Date = Date.Today
           connectionString = ConfigurationManager.ConnectionStrings("BARCODEConnectionString").ToString
           connection = New SqlConnection(connectionString)

           Try
               connection.Open()
               Catch ex As Exception
               SQLcmd.CommandText = "INSERT INTO PickingList([USRID],[PICKINGLIST_ID],[LOGDATE]) VALUES ('" & Convert.ToInt32(PickerID.Text) & "','" & Convert.ToInt32(PickListID.Text) & "', now())"
               SQLcmd.ExecuteNonQuery()
               lblerror.Text = "Fail to submit. Please try again."
           End Try
           If connection.State = 1 Then

               lblerror.Text = "connected"
           End If

Richard Deeming

Не делай этого так!

В данный конкретный случай, поскольку вы преобразуете параметры в целые числа, вы, вероятно, в безопасности... пока кто-то не придет через шесть месяцев и не удалит Convert.ToInt32 вызов.

НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.

Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]

1 Ответов

Рейтинг:
10

dnibbo

ГМ... у вас есть команда обновления в улове.
Он будет пытаться обновить только в том случае, если соединение не откроется!