基本的用法可以參考:python連接SQL Server:Pymssql模塊?
和上一篇文章中的代碼,只取一個結果集不同,這次會一次運行2個sql語句,然后分別取出2個結果集,打印輸出。
代碼中有詳細的注釋,一看就明白
?
# -*- coding:gbk -*-import pymssql#數據庫連接
conn=pymssql.connect(host='wc-pc',user='sa',password='ggg',database='Test')#打開游標
cur=conn.cursor();if not cur:raise Exception('數據庫連接失敗!')#有2條sql,第2個sql某個相同的分數對應幾門課程
sSQL = 'SELECT * FROM TB;select score,count(*) c from tb group by score'#1.執行sql,獲取所有數據
cur.execute(sSQL)
result=cur.fetchall()print('\n第一個結果集:')#通過enumerate返回行號
for i,(id,name,v) in enumerate(result):print('第 '+str(i+1)+' 行記錄->>> '+ str(id) +' '*3+ name+ ' '*3 + str(v) )#2.下一個結果集
cur.nextset()
nextResult=cur.fetchall()#這段for循環輸出列時,不需要考慮有多少列,更加靈活
print('\n第2個結果集:')
for i in range(len(nextResult)):print('第 '+str(i+1)+' 行記錄->>> ' + (' '*3).join(str(nextResult[i][k]) for k in range(len(nextResult[i]) ) ) )conn.close()
輸出:
?