Python訪問SQL Server資料庫

2021-08-02 11:46:36 字數 2565 閱讀 5357

1、 有兩個python的sqlserver驅動,乙個是pyodbc、另外乙個是pymssql,選擇期中的乙個即可以,然後配置你的開發環境。

pip install pymssql即可安裝pymssql庫。

備註:安裝的過程中可能會出現找不到sqlfront.h檔案的錯誤。

如果是linux平台,直接安裝freetds即可以,如:yuminstall freetds。

2、 使用pymssql

import pymssql

# 建立資料庫連線

defcreateconnection():

conn = pymssql.connect(

server=

'ip位址',

user=

'sa',

password=

'password',

database=

'sales')

return conn

#關閉資料庫連線。

defcloseconnection(

conn):

conn.close()

#插入一行資料

definsertrow(

conn):

print(

"開始插入資料")

cursor = conn.cursor()

#cursor.execute("insert into product([name], productnumber) values('sql server express', 'sqlexpress');")

cursor.execute(

"insert into product([name], productnumber) output inserted.productid values('sql server express', 'sqlexpress');")

#如果在這裡呼叫commit,fetchone返回的資料就是空。

row = cursor.fetchone()

while row:

print(

"insert product id :" +

str(row[

0]))

row = cursor.fetchone()

#需要呼叫commit提交資料,預設不會自動提交。

conn.commit()

print(

"插入資料結束")

# 查詢資料

defqueryrows(

conn):

print(

"開始查詢資料")

cursor = conn.cursor()

cursor.execute(

"select * from product;")

row = cursor.fetchone()

while row:

print(

"product id = " +

str(row[

0]))

row = cursor.fetchone()

print(

"查詢資料結束。")

defquerymaxid(

conn):

cursor = conn.cursor()

cursor.execute(

"select maxid=max(productid) from product;")

row = cursor.fetchone()

print(

"最大的產品id = " +

str(row[

0]))

#事務處理

defrollbacktransaction(

conn):

print(

"開始事務")

cursor = conn.cursor()

cursor.execute(

"begin transaction")

cursor.execute(

"insert into product([name], productnumber) output inserted.productid values('roll back transaction', 'bollback');")

conn.rollback()

print(

"回滾事務")

defmain():

conn = createconnection()

insertrow(conn)

print(

"")queryrows(conn)

print(

"")print(

"事務測試之前")

querymaxid(conn)

rollbacktransaction(conn)

print(

"事務測試之後")

querymaxid(conn)

closeconnection(conn)

print(

"執行完畢。") if

__name__ ==

'__main__':

main()

Python 讀取文字檔案到sql server

import json import pymysql import sqlite3 import re import pyodbc import os 載入所需模組 sqlconn pyodbc.connect driver server 伺服器名稱 database 資料庫名稱 連線資料庫 cur...

ISA SERVER日誌存放SQL SERVER中

在預設安裝 isa 2004 或是2006後,將會自動安裝簡易版的 sql server 來存放防火牆與 webproxy 的連線訪問日誌 可是由於 msde 僅限於單機連線的使用 並且在訪問上也有容量大小的限制 因此為了提公升整體 isa 的執行能力 建議可以改由將這些頻繁的日誌檔案訪問 寫入到內...

鏈結sqlserver 安裝sqlserver

在進行部署專案的時候。特別是重做系統之後要注意,最好安裝資料庫,在安裝其他編輯軟體 而且,有乙個特點是先安裝低版本可以安裝高版本,但是你裝高版本後很難安裝高版本 我這有個sqlserver 2008 r2 在安裝時,不要害怕,一般都是預設安裝,讓你操作的時候 也不多,而且,安裝的位置一般都是在系統盤...