python連接sqlserver
❶ 在windows上的python 連接 linux 並做點操作
訪問sqlServer
復制代碼代碼如下:
>>> import pyodbc
>>>cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=192.168.1.100\\sql;DATABASE=testDB;UID=sa;PWD=myPassword')
>>>cursor = cnxn.cursor()
>>>cursor.execute("select * from Tb")
二、Linux下配置Python訪問SqlServer
環境:CentOS 6.2 + Sqlserver 2008
1、安裝freetds:
復制代碼代碼如下:
yum install freetds*
2、安裝pyodbc:
復制代碼代碼如下:
yum install pyodbc
修改odbc配置:
復制代碼代碼如下:
vi /etc/odbcinst.ini
添加FreeTDS驅動:
復制代碼代碼如下:
[SQL Server]
Description = FreeTDS ODBC driver for MSSQL
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/libtdsS.so
FileUsage = 1
3、測試
復制代碼代碼如下:
#python
>>> import pyodbc
>>>cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=192.168.1.100\\sql;DATABASE=testDB;UID=sa;PWD=myPassword')
>>>cursor = cnxn.cursor()
>>>cursor.execute("select * from Tb")
❷ python3 連接 sql server 2014
真巧,剛剛做過,鏈接的也是MSSQL2014的資料庫,並且測試是成功的
importpymssql
conn=pymssql.connect(host='主機名或IP',user='資料庫用戶名',password='資料庫用戶密碼',database='資料庫名',charset='utf8')
cursor=conn.cursor()
ifnotcursor:
raise(NameError,"連接資料庫失敗")
strsql="select*from表"
try:
cursor.execute(strsql)#執行SQL語句
conn.commit()#修改數據後提交事務
except:
print(0,"錯誤:"+strsql)
pass
finally:
print(l,"成功!")
pass
cursor.close()#關閉對象
conn.close()#關閉資料庫連接
import pymssql這句話必須有,主要是pymssql必須要安裝上,可以使用pip list來查看是否安裝
❸ python連不上sqlserver
pymssql.connect(host='127.0.0.1',user='sa',password='sa',database='PSKJC',tds_version='7.1')
你磨州的連接兆晌代碼換成我這個看看,前提是你的sqserver已經啟動了瞎猜蔽
❹ python怎麼連接mysql資料庫
在 Python 語言環境下我們這樣連接資料庫。
In [1]: from mysql import connector
In [2]: cnx = connector.connect(host="172.16.192.100",port=3306,user="appuser",password="xxxxxx")
但是連接資料庫的背後發生了什麼呢?
答案
當我們通過驅動程序(mysql-connector-python,pymysql)連接 MySQL 服務端的時候,就是把連接參數傳遞給驅動程序,驅動程序再根據參數會發起到 MySQL 服務端的 TCP 連接。當 TCP 連接建立之後驅動程序與服務端之間會按特定的格式和次序交換數據包,數據包的格式和發送次序由MySQL 協議規定。MySQL 協議:https://dev.mysql.com/doc/internals/en/client-server-protocol.html整個連接的過程中 MySQL 服務端與驅動程序之間,按如下的次序發送了這些包。
MySQL 服務端向客戶端發送一個握手包,包里記錄了 MySQL-Server 的版本,默認的授權插件,密碼鹽值(auth-data)。
2. MySQL 客戶端發出 ssl 連接請求包(如果有必要的話)。
3. MySQL 客戶端發出握手包的響應包,這個包時記錄了用戶名,密碼加密後的串,客戶端屬性,等等其它信息。
4. MySQL 服務端發出響應包,這個包里記錄了登錄是否成功,如果沒有成功也會給出錯誤信息。
❺ 如何在Python環境下連接Oracle資料庫
首先下載驅動
(cx_Oracle) 要注意一下版本 根據你的情況加以選擇
安裝
執行exe安裝程序就可以了 它會一個cx_Oracle pyd到{PYTHON_HOME}Libsite packages目錄下
執行一段測試程序 import cx_Oraclecon = nnect( xjtu_test xjtu world )cursor = con cursor()cursor close()con close()
里邊connect中的 個參數從左到右分別是 user pass TNS
那個TNS可以用Oracle客戶端高悉謹工具中的Net Configuration Assistant來配置
參考cx_Oracle API
好了 執行那段測試代碼時你肯定遇到問題了 一般會有以下問題戚基
【 】import cx_Oracle 時報告找不到OCI DLL
到裝了Oracle的機器上找一個 然後到{PYTHON_HOME}Libsite packages目錄下就可以了
【 】nnect 時報告RuntimeError Unable to acquire Oracle environment handle
這個問題相對比較麻煩 按以下步驟來解決陸衡 (可能不需要所有的步驟 我沒有確認 不過把以下步驟都執行了 確實問題就解決了)
首先 確認你是在控制台下邊來執行這個python腳本的 而不是某些ide 例如 PyDev(它們似乎無法載入os的環境變數)
其實 在本機安裝Oracle(只安客戶端工具就可以了)
lishixin/Article/program/Oracle/201311/17797
❻ linux 下用python連接windows下sqlserver報錯
基本上每個linux都安裝有python,幾伍衡閉乎每個unix也安裝有python,包括蘋果的OS。android。
windows下通常安裝包都比較健壯。應該用得也很多。如果你安裝出現問題往往是因為這個模塊沒有提供windows下的安裝包。攔嫌你可以查一下unoffice python mole(好象是這個名子),裡面有些包是別人編譯好的,可以直接用。
主要問題還是windows使用的編譯器是visual studio。而linux , unix很多都是兼容gcc的。象windows這樣沒有unix血統的操作系統,現在已經很少了,大規模使用僅僅微軟一家支持。其它的廠商大多都有unix的傳承與習慣。所以windows與unix之間的問題就顯得比較的突出。
linux下命令行比較方便。不過圖形界面並不是腔裂很強大。windows的圖形界面通常好。另外windows下的游戲也特別好。 如果你開發游戲通常只能在windows下做了。手機除外。
linux下的python通常比較的強大,因為它的包,它的工作方式通常會比較的流暢。象管道,事件,共享內存等等都比較容易使用。