Patrice T
Невозможно узнать, что именно является вашим запросом, потому что это зависит от значений, используемых для построения запроса.
Только отладчик может показать, что такое реальный запрос, тогда мы можем сказать, в чем проблема.
Dim cb1 As String = "insert into CheckOut_Room(ID,BillNo,CheckInID,BillDate,Notes ) VALUES (" & txtBillID.Text & ",'" & txtBillNo.Text & "'," & txtCheckInID.Text & ",@d2,@d1)"
Вы счастливо смешиваете конкатенацию и параметры в одном запросе, это плохо.
Никогда не создавайте SQL-запрос путем объединения строк. Рано или поздно вы сделаете это с помощью пользовательских вводов, и это откроет дверь к уязвимости под названием "SQL-инъекция", она опасна для вашей базы данных и подвержена ошибкам.
Одна кавычка в имени - и ваша программа выйдет из строя. Если пользователь вводит имя, например "Брайан О'Коннер", может привести к сбою вашего приложения, это уязвимость SQL-инъекции, и сбой-это наименьшая из проблем, вредоносный пользовательский ввод, и он продвигается к командам SQL со всеми учетными данными.
SQL-инъекция - Википедия[
^]
SQL-инъекция[
^]
Атаки SQL-инъекций на примере[
^]
PHP: SQL-инъекция - руководство пользователя[
^]
Шпаргалка по предотвращению инъекций SQL - OWASP[
^]
Как я могу объяснить SQL-инъекцию без технического жаргона? - Обмен Стеками Информационной Безопасности[
^]
Вторичная проблема, невозможно узнать, что именно является вашим запросом, потому что это зависит от значений параметров.
Только отладчик может показать, что такое реальный запрос.