sql >> Databáze >  >> RDS >> Sqlserver

Použití uložených procedur SQL Server z Pythonu (pyodbc)

Z dokumentace pyodbc

Chcete-li volat uloženou proceduru právě teď, předejte volání metodě provádění buď pomocí formátu, který vaše databáze rozpozná, nebo pomocí formátu escape volání ODBC. (Ovladač ODBC pak přeformátuje volání, aby odpovídalo dané databázi.)

Pro SQL Server byste použili něco takového:

# SQL Server format
cursor.execute("exec sp_dosomething(123, 'abc')")

# ODBC format
cursor.execute("{call sp_dosomething(123, 'abc')}")

Takže zavolat vaši proceduru

id_ = 'test' 
pw = '12345' 
depart = 'none' 
class_ = 'GM' 
name = 'name' 
birthday = 'None' 
grade = 3 
subgrade = 2 

sql = 'exec [my_database].[dbo].[my_table](?, ?, ?, ?, ?, ?, ?, ?)'
values = (id_, pw, depart, class_, name, birthday, grade, subgrade)

cursor.execute(sql, (values))


  1. Klauzule SQL WHERE porovnává hodnoty s koncovými mezerami

  2. Použití výstupních parametrů uložené procedury v C#

  3. Skrytá funkce:Přetahujte přístupové objekty mezi soubory

  4. MySQL utf8mb4, Chyby při ukládání emotikonů