Z dokumentacji pyodbc
Aby teraz wywołać procedurę składowaną, przekaż wywołanie do metody execute przy użyciu formatu rozpoznawanego przez bazę danych lub formatu ucieczki wywołań ODBC. (Sterownik ODBC ponownie sformatuje wywołanie, aby pasowało do podanej bazy danych.)
W przypadku SQL Server możesz użyć czegoś takiego:
# SQL Server format
cursor.execute("exec sp_dosomething(123, 'abc')")
# ODBC format
cursor.execute("{call sp_dosomething(123, 'abc')}")
Więc zadzwoń do swojej procedury
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))