Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Procedury składowane SQL nie kończą się po wywołaniu z Pythona

Jak dowiedział się OP, niespójne lub niepełne przetwarzanie procedur składowanych z warstwy aplikacji, takiej jak Python, może wynikać z odchodzenia od najlepszych praktyk skryptów TSQL.

Jako @AaronBetrand najważniejsze informacje na tej listy kontrolnej najlepszych praktyk w zakresie procedur przechowywanych blogu, rozważ między innymi następujące elementy:

  • Jawnie i swobodnie używaj BEGIN ... END bloki;
  • Użyj SET NOCOUNT ON aby uniknąć wiadomości wysyłanych do klienta dla każdego wiersza, którego dotyczy działanie, prawdopodobnie przerywając przepływ pracy;
  • Użyj średników jako terminatorów instrukcji.

Przykład

CREATE PROCEDURE dbo.myStoredProc
AS
BEGIN
   SET NOCOUNT ON;

   SELECT * FROM foo;

   SELECT * FROM bar;
END
GO



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak naprawić odwrócone znaki arabskie zmieszane z angielskim w serwerze SQL?

  2. Dzielenie wartości rozdzielanych w kolumnie SQL na wiele wierszy

  3. Obiekt 'DF__*' jest zależny od kolumny '*' - Zmiana int na double

  4. Jak ustawić nienazwane parametry SQL w SqlCommand?

  5. Czy powinienem używać !=lub <> dla not equal w T-SQL?