前面學完了SQL Server的基本語法,接下來學習如何在程式中使用sql,畢竟不能在程式中使用的話,實用性就沒那麼大了。
python是使用pymssql這個模組來操作SQL Server資料庫的,所有需要先安裝pymssql。
這個直接在命令列輸入pip install pymssql
安裝就行了
然後還要配置好自己本地的SQL Server資料庫,進入Microsoft SQL Server Management Studio中可以進行設置。如果你選擇的是使用Windows驗證的方式的話,要改成SQL驗證方式才行。這個網路教學很多,搜尋一下就出來了。
開啟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 exfinally: conn.close()
大家可以試試看conn.commit()刪除,然後看看資料庫是否有變化。
''' TestDB类 功能:测试数据库的类写法 作者: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()
以上是Python操作SQL Server資料庫的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!