Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Вмъкване на израз в база данни на SQL Server

Има три възможни сценария за вмъкване като това:

  1. Вмъкването е успешно.
  2. Получавате изключение.
  3. Имате тригер, който замества вмъкването с някакво друго действие.

Предполагам, че нямате тригер и тъй като не получавате запис в таблицата, трябва да има изключение.

Имате ли код, който улавя изключението на друго ниво? Това би обяснило защо не го виждате и също така ще остави връзката с базата данни незатворена, което би обяснило защо имате проблеми при свързването с базата данни след това.

Използване на using блок за връзката с базата данни ще я затвори правилно, дори ако има грешка в кода.

Използвате параметризирана заявка, но не виждам да добавяте параметрите към командния обект навсякъде в кода. Това би било нещо като:

cmd.Parameters.Add("Price", SqlDbType.Decimal).Value = price;
cmd.Parameters.Add("User", SqlDbType.NChar, 20).Value = user;
cmd.Parameters.Add("Time", SqlDbType.NChar, 15).Value = time;
cmd.Parameters.Add("Customer", SqlDbType.NChar, 10).Value = customer;
cmd.Parameters.Add("Discount", SqlDbType.Decimal).Value = discount;
cmd.Parameters.Add("FullPrice", SqlDbType.Decimal).Value = fullPrice;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да избера върнато име на колона в SELECT FOR XML заявка?

  2. Как мога да присъединя XML колона обратно към записа, от който произхожда?

  3. Грешка 28000:Неуспешно влизане за потребител DOMAIN\\user с pyodbc

  4. Извикване на съхранена процедура с помощта на VBA

  5. Каква е добра идея за запазване на данни от чат в база данни?