中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何連接sql server

發布時間:2022-02-23 10:19:52 來源:億速云 閱讀:274 作者:iii 欄目:開發技術

這篇“python如何連接sql server”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“python如何連接sql server”文章吧。

先利用pip安裝pymssql庫

pip install pymssql

具體連接、測試代碼:

# server默認為127.0.0.1,如果打開了TCP動態端口的需要加上端口號,如'127.0.0.1:1433'
# user默認為sa
# password為自己設置的密碼
# database為數據庫名字
server = '127.0.0.1'
user = "sa"
password = "123456"
database = "pubs"
conn = pymssql.connect(server, user, password, database)
# 可簡化為conn = pymssql.connect(host='localhost', user='sa', password='123456', database='pubs')
cursor = conn.cursor()
cursor.execute('SELECT * FROM titles')
print( cursor.fetchall() ) 

# 如果用pandas讀取數據庫
import pymssql
import pandas as pd
conn = pymssql.connect('IP地址','賬號','密碼','數據庫')
sql_1 = "SELECT Id,creat_time from 表名"
#利用pandas直接獲取數據"
data = pd.read_sql(sql_1, conn)
conn.close()
print(data)

封裝好的版本:

#coding=utf-8 
# sqlserver的連接
import pymssql

class MSSQL:
    def __init__(self,host,user,pwd,db):
        self.host = host
        self.user = user
        self.pwd = pwd
        self.db = db

    def __GetConnect(self):
        """
        得到連接信息
        返回: conn.cursor()
        """
        if not self.db:
            raise(NameError,"沒有設置數據庫信息")
        self.conn = pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")
        cur = self.conn.cursor()
        if not cur:
            raise(NameError,"連接數據庫失敗")
        else:
            return cur

    def ExecQuery(self,sql):
        """
        執行查詢語句
        返回的是一個包含tuple的list,list的元素是記錄行,tuple的元素是每行記錄的字段

        """
        cur = self.__GetConnect()
        cur.execute(sql)
        resList = cur.fetchall()

        #查詢完畢后必須關閉連接
        self.conn.close()
        return resList

    def ExecNonQuery(self,sql):
        """
        執行非查詢語句

        調用示例:
            cur = self.__GetConnect()
            cur.execute(sql)
            self.conn.commit()
            self.conn.close()
        """
        cur = self.__GetConnect()
        cur.execute(sql)
        self.conn.commit()
        self.conn.close()

def main():
	# host默認為127.0.0.1,如果打開了TCP動態端口的需要加上端口號,如'127.0.0.1:1433'
    # user默認為sa
    # pwd為自己設置的密碼
    # db為數據庫名字
    ms = MSSQL(host='127.0.0.1',user="sa",pwd="123456",db="pubs")
    resList = ms.ExecQuery("SELECT * FROM titles")
    print(resList)

if __name__ == '__main__':
    main()

如果出現pymssql.OperationalError: (20009, b'DB-Lib error message 20009, severity 9: Unable to connect: Adaptive Server is unavailable or does not exist (SZSSQLEXPRESS) ')類似保錯,有以下幾個可能的原因:

1.數據庫名字寫錯

2.tcp/ip協議未開啟,這個位于(右鍵此電腦,點擊管理,點擊服務與應用程序,點擊sql配置管理器,點擊sql server網絡配置,點擊mssqlserver的協議,右鍵tcp/ip,點擊啟用,重啟電腦后才會生效)

3.動態端口錯誤,默認是沒有打開動態端口的,如果打開了就需要寫端口號,在2中的tcp/ip協議中查看動態端口號,點擊tcp/ip協議,點擊ip地址,然后翻到最下面,找到ipall 里面的動態端口號,也可以將動態端口號刪掉,然后不寫

4.sa用戶登錄未啟用

打開sql server management studio,點擊安全性,點擊登錄名,如果sa項出現紅色的×則說明sa用戶登錄未啟用,右鍵sa點擊屬性,點擊狀態即可啟用。

以上就是關于“python如何連接sql server”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

赣榆县| 拜泉县| 老河口市| 德格县| 出国| 司法| 巫山县| 定远县| 成安县| 色达县| 涟水县| 吴堡县| 桐庐县| 开远市| 游戏| 讷河市| 乡城县| 望都县| 广东省| 伊宁县| 神池县| 崇明县| 婺源县| 上思县| 赤水市| 兴海县| 哈密市| 乡宁县| 天峻县| 蒲城县| 辉县市| 肥东县| 定兴县| 宜宾市| 全州县| 三门县| 腾冲县| 达拉特旗| 鄂温| 宝应县| 长沙县|