python pymssql庫調用存儲過程


 今天項目使用到調用一個sql server的存儲過程讀取其中內容然后存到另一張表,作為一個看板使用的數據。百度了一圈,親測下面方法可用!

一 安裝sql server的庫
 pip install pymssql


二 配置數據庫讀取存儲過程
import pymssql
"""配置"""
server='xxx'
user ='xxx'
password='xxx'
database='xxx'
"""連接數據庫"""
conn = pymssql.connect(server, user, password, database)
cursor = conn.cursor()
cursor.execute(f"exec 存儲過程名稱 @參數1='xxx',@參數2='xxx',@參數3='xxx',@參數4='xxx'")
result = cursor.fetchall()  #得到結果集
for i in result:
  print(i)  #遍歷打印查詢結果集的數據
注:變量前面要加@,要是調用存儲過程無需傳參可忽略;
pymssql 2.0以上可通過cursor.callproc方法調用存儲過程cursor.callproc('存儲過程','參數元組') 需使用cursor.nextset()才能得到結果集

三 寫入數據庫
sql = """INSERT INTO [數據庫].[文件名].[表名] ([column1],[column2],[column3],[column4]...)
                                  VALUES({value1},{value2},'{value3}',{value4}...);
                                                """.format(
    value1=參數1,
    value2=參數2,
    value3=參數3,
    value4=參數3,
    ...)
cursor.execute(sql)
conn.commit()
conn.close()
注:寫入數據庫字段若為string,引參時需加個引號,如'{value3}'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM