日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python3.5链接SQL2017,读取数据库中的数据

發布時間:2024/9/30 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python3.5链接SQL2017,读取数据库中的数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

之前寫了一個小程序,使用的數據是從數據庫中下載出來的,但是現在想要讓它直接鏈接上數據庫中,可以直接從數據庫中讀取數據,所以研究了一下python和sql之間的鏈接。具體如下:
使用的庫為pyodbc
安裝過程自不必多說,和其他庫的安裝一樣
安裝完成后測試過程,在網上找到了好多資料

>>> 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")

下面一個一個說一下什么意思及自己要使用時應注意什么
第一句import pyodbc導入pyodbc庫
第二句
cnxn=pyodbc.connect('DRIVER={SQL Server};SERVER=192.168.1.100\\sql;DATABASE=testDB;UID=sa;PWD=myPassword')
我在這句吃了很多虧,導致了許多莫名其妙的錯誤,下面我們就詳細剖析下這條語句,首先pyodbc.connect()是鏈接函數,它傳入一個string類型參數,這個參數會指定鏈接數據庫的類型DRIVER,數據庫的名稱DATABASE,數據庫所屬服務器SERVER,用戶名UID,密碼PWD,這些東西對于那些對數據庫了解的比較好的童鞋來說應該不成問題,但對我這個半吊子來說這個就是一個大問題,下面就一個個地去找一下這些東西在哪,首先我先說下我的數據庫是SQL2017,我使用的sql manage是Microsoft SQL Server Management Studio 17,在安裝它時會自動安裝一個Native Client,大家可以去控制面板->程序->程序與功能 中搜索Native Client,確認下自己的版本,然后對應下表,將對應的值輸入鏈接數據庫的類型DRIVER后邊花括號里;

  • {SQL Server} ————————- released with SQL Server 2000
  • {SQL Native Client} —————– released with SQL Server 2005 (also known as
    version 9.0)
  • {SQL Server Native Client 10.0} - released with SQL Server 2008
  • {SQL Server Native Client 11.0} - released with SQL Server 2012

    第二個參數數據庫所屬服務器SERVER的值我查閱的資料大多都是localhost,但是對于我的數據庫卻老是鏈接不上,所以我只好打開Microsoft SQL Server Management Studio 17,連接上數據庫,右鍵屬性

    紅圈中的值才是服務器的值,也就是SERVER的值
    第三個參數數據庫的名稱DATABASE自不必多說,下圖中紅圈的值就是數據庫的名稱

    在確定第四個參數和第五個參數的值之前,先看下數據庫是否可以啟用服務器代理賬戶,還是第一個參數一樣的窗口右鍵->參數->安全性,要確保啟用服務器代理賬戶項是可以啟動的,如下圖

    然后找到對象資源管理器中的數據庫服務器(第一個參數也在這)一項中的安全性->登錄名

    右鍵sa->屬性->安全性,輸入密碼,確定。這個用戶sa和密碼就是第四和第五個參數。

    這些就是第二條語句中的參數。
    第三條語句是建立cursor,沒什么可說的。
    第四條語句就是對數據庫中數據進行操作了,其中的sql語言要寫在execute()函數中,并用雙引號括起來
    但是這條語句輸出的卻是

>>> cursor.execute("select name from Database.data") <pyodbc.Cursor object at 0x000001C421FAFAF8>

要想將它顯示為正常的形式還需要調用其它函數fetchone()或者fetchall()。

>>> cursor.fetchall() [('1haha', ), ('2dada', ), ('3chuachua', ), ('4xixi', ), ('5hehe', ), ('6qieqie', ), ('7lele', ), ('8lala', )]

成功!
如果是對數據庫中數據進行增刪修改等其它操作時,還要記得用函數commit()對操作提交一下。

>>> cursor.execute("delect from Database.data where name = '4xixi' ") >>> cnxn.commit()

總結

以上是生活随笔為你收集整理的python3.5链接SQL2017,读取数据库中的数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美精品久久天天躁 | 日韩欧美卡一卡二 | 色姑娘久| 国产成人综合视频 | 精品99在线 | 国产精品久久AV无码 | 成人羞羞国产免费动态 | 欧美影院在线观看 | 亚洲人精品午夜射精日韩 | 女同一区二区三区 | 久久网av | 曰本三级日本三级日本三级 | 国产免费一区二区三区在线观看 | 99视频久| 久久国产经典视频 | 女生张开腿给男生桶 | 9999国产精品 | 好逼天天操| 天天舔天天爽 | 男人的天堂视频在线观看 | 亚洲美女网站 | 欧美视频一区二区在线观看 | 日韩无码专区 | 中文在线最新版天堂 | 一区二区三区免费视频观看 | 色在线网站 | 亚洲精品成人在线视频 | 神马久久久久久久久 | www.麻豆av.com| 探花国产在线 | 潘金莲一级淫片aaaaa武则天 | 欧美日韩亚洲国产另类 | 欧美黑人巨大xxx极品 | 日本久久高清视频 | 一区二区三区久久 | 亚洲网站色 | 国产福利一区二区 | 欧美大片在线免费观看 | 国产精品一区三区 | 久久久久久国产精品免费播放 | 免费av网站在线看 | 美女高潮流白浆视频 | 三上悠亚在线观看一区二区 | 天堂欧美城网站网址 | 人体av | 免费黄色国产 | 99在线看 | 精品久久不卡 | 国产在线1| 伊人快播 | 韩国中文字幕在线观看 | 午夜影院网站 | 四十路av | 97视频久久 | 国产成年无码久久久久毛片 | 中文字幕福利视频 | 免费视频久久 | 青青av| www.999热 | 成人网址在线观看 | 艳妇臀荡乳欲伦交换h漫 | 99免费精品 | 亚洲精品国产a | 草莓视频成人在线 | 亚洲人体视频 | 久久久激情 | 久久久久久艹 | 欧美日韩在线免费播放 | 涩涩视频在线观看免费 | 国产不卡在线观看 | av一二三区| 日本色妞 | 欧州一区二区 | 久久伊人超碰 | 草逼视频网站 | 国产女人高潮毛片 | 欧美韩日一区二区 | 91精品国产综合久久精品图片 | 99视频在线观看视频 | 九九九九九热 | 国产免费av一区二区三区 | 极品少妇xxxx精品少妇偷拍 | 国产乱来 | 精品无码一区二区三区免费 | 欧洲成人午夜精品无码区久久 | 久久96| 69式视频 | 日韩激情国产 | 小sao货大ji巴cao死你 | 一级一片免费播放 | 婷婷日| 老熟女毛茸茸浓毛 | 大黄一级片 | 中国一区二区视频 | 欧美在线网站 | 精品伦一区二区三区 | 日韩电影在线观看一区 | 婷婷深爱网 | 手机在线精品视频 |