0.目錄 1. "前言" 2. "準備工作" 3. "簡單測試語句" 4. "提交與回滾" 5. "封裝成類的寫法" 1.前言 前面學完了SQL Server的基本語法,接下來學習如何在程式中使用sql,畢竟不能在程式中使用的話,實用性就不那麼大了。 2.最基本的SQL查詢語句 python是使用p ...
0.目錄
1.前言
2.準備工作
3.簡單測試語句
4.提交與回滾
5.封裝成類的寫法
1.前言
前面學完了SQL Server的基本語法,接下來學習如何在程式中使用sql,畢竟不能在程式中使用的話,實用性就不那麼大了。
2.最基本的SQL查詢語句
python是使用pymssql這個模塊來操作SQL Server資料庫的,所有需要先安裝pymssql。
這個直接在命令行里輸入pip install pymssql
安裝就行了
然後還要配置好自己本地的SQL Server資料庫,進入Microsoft SQL Server Management Studio中可以進行設置。如果你選擇的是使用Windows身份驗證的方式的話,要改成SQL驗證方式才行。這個網上教程很多,搜索一下就出來了。
3.簡單測試語句
打開IDLE,新建python程式:
import pymssql
conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
#查看連接是否成功
cursor = conn.cursor()
sql = 'select * from student'
cursor.execute(sql)
#用一個rs變數獲取數據
rs = cursor.fetchall()
print(rs)
運行結果:
4.提交與回滾
在python中,在操作完 "增刪改" 之後,還需要執行commit()才能真正提交代碼執行,如果出意外的話就執行rollback()回滾到之前的狀態,相當於之前的操作都白做了,這樣也保護了資料庫。
所以建議寫程式這樣寫:
try:
conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
cursor = conn.cursor()
sql = 'insert into student values('0001', '張三', 18, '男', '文學院')'
cursor.execute(sql)
conn.commit()
except Exception as ex:
conn.rollback()
raise ex
finally:
conn.close()
大家可以試一試將conn.commit()刪去,然後看看資料庫是否有變化。
5.封裝成類的寫法
'''
TestDB類
功能:測試資料庫的類寫法
作者:PyLearn
博客: http://www.cnblogs.com/PyLearn/
最後修改日期: 2017/10/17
'''
import pymssql
class TestDB():
def __init__(self):
try:
self.conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
self.cursor = self.conn.cursor()
self.sql = "insert into student values('0001', '張三', 18, '男', '文學院')"
self.cursor.execute(self.sql)
self.conn.commit()
except Exception as ex:
self.conn.rollback()
raise ex
finally:
self.conn.close()
if __name__ == '__main__':
test_DB = TestDB()