欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python調(diào)用pymssql包操作SqlServer數(shù)據(jù)庫(kù)的實(shí)現(xiàn)

 更新時(shí)間:2022年06月12日 16:17:52   作者:gc_2299  
本文主要介紹了python調(diào)用pymssql包操作SqlServer數(shù)據(jù)庫(kù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

之前的文章介紹了python抓取網(wǎng)頁(yè)數(shù)據(jù)并將數(shù)據(jù)保存到本地excel文件,后續(xù)可以將數(shù)據(jù)保存到數(shù)據(jù)庫(kù)(SqlServer、mysql等)中,本文學(xué)習(xí)python中操作SqlServer數(shù)據(jù)庫(kù)的基本用法,后續(xù)將從網(wǎng)頁(yè)中抓取的數(shù)據(jù)保存到SqlServer數(shù)據(jù)庫(kù)。

百度python操作SqlServer數(shù)據(jù)庫(kù),大部分搜索結(jié)果中使用pymssql操作SqlServer數(shù)據(jù)庫(kù),本文即基于pymssql包學(xué)習(xí)SqlServer數(shù)據(jù)庫(kù)的基本操作方式,并使用之前文章中使用的環(huán)境檢測(cè)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作測(cè)試。

pymssql包可以通過(guò)離線(xiàn)和在線(xiàn)方式安裝。離線(xiàn)方式的話(huà),請(qǐng)?jiān)趨⒖嘉墨I(xiàn)2中下載包文件并將其復(fù)制到python目錄下的Lib\site-packages文件夾中,在線(xiàn)安裝的話(huà),在命令行中運(yùn)行下列命令即可安裝。

pip install pymssql

在這里插入圖片描述

從目前學(xué)習(xí)的內(nèi)容看,pymssql主要通過(guò)執(zhí)行sql語(yǔ)句操作數(shù)據(jù)庫(kù),并通過(guò)cursor獲取查詢(xún)結(jié)果。本文主要學(xué)習(xí)以下基本操作:

  • 數(shù)據(jù)庫(kù)的連接與關(guān)閉;
  • 數(shù)據(jù)查詢(xún);
  • 數(shù)據(jù)插入。

數(shù)據(jù)庫(kù)的連接與關(guān)閉。pymssql通過(guò)調(diào)用pymssql.connect函數(shù)創(chuàng)建數(shù)據(jù)庫(kù)連接,并返回Connection對(duì)象。調(diào)用Connection對(duì)象的cursor函數(shù)獲取cursor對(duì)象,后續(xù)使用該對(duì)象執(zhí)行sql語(yǔ)句并從數(shù)據(jù)庫(kù)中獲取數(shù)據(jù)。所有操作完成后調(diào)用Connection對(duì)象的close函數(shù)關(guān)閉鏈接。測(cè)試程序及運(yùn)行結(jié)果如下所示。

在這里插入圖片描述

import pymssql

server = 'XXX.XXX.XXX.XXX'
user = 'XXXXXXX'
password = 'XXXXXXXXXX'
db='EC'

conn = pymssql.connect(server, user, password, db)

cursor = conn.cursor()
cursor.execute('SELECT Count(*) FROM EnvironmentRecord')
print('total data amount = %d' % cursor.fetchone())

conn.close()

在這里插入圖片描述

數(shù)據(jù)查詢(xún)。調(diào)用cursor對(duì)象的execute函數(shù)執(zhí)行無(wú)參數(shù)或帶參數(shù)的查詢(xún)語(yǔ)句。如果是無(wú)參數(shù)的sql語(yǔ)句,直接向上面示例中的用法調(diào)用execute函數(shù)即可,如果有參數(shù),則調(diào)用下圖中的第二個(gè)execute函數(shù)。有多種方式獲取查詢(xún)結(jié)果,cursor對(duì)象的fetchone函數(shù)獲取查詢(xún)結(jié)果中的下一行數(shù)據(jù),fetchmany函數(shù)獲取指定數(shù)量的查詢(xún)結(jié)果,而fetchall獲取所有的查詢(xún)結(jié)果。除了調(diào)用函數(shù),也可以通過(guò)迭代器或fetchone循環(huán)獲取所有查詢(xún)結(jié)果,從參考文獻(xiàn)3中找到了兩種使用示例,代碼片段如下:

在這里插入圖片描述

#使用示例1
cursor.execute('SELECT * FROM persons WHERE salesrep=%s', 'John Doe')
row = cursor.fetchone()
while row:
    print("ID=%d, Name=%s" % (row[0], row[1]))
    row = cursor.fetchone()
    
#使用示例2
cursor.execute('SELECT * FROM persons WHERE salesrep=%s', 'John Doe')
for row in cursor:
	#獲取一條記錄中的某個(gè)屬性時(shí),可以通過(guò)屬性名稱(chēng)索引方式獲取
    print("ID=%d, Name=%s" % (row['id'], row['name']))

參照上述示例編寫(xiě)的查詢(xún)測(cè)試代碼,程序及執(zhí)行結(jié)果如下所示。

import pymssql

server = 'XXX.XXX.XXX.XXX'
user = 'XXXXXXX'
password = 'XXXXXXXXXX'
db='EC'

conn = pymssql.connect(server, user, password, db)

cursor = conn.cursor()
cursor.execute('SELECT * FROM EnvironmentRecord WHERE CreateTime>=%s', '2021-6-19 16:12:00')

for row in cursor:
    print('row = %r' % (row,))

conn.close()

在這里插入圖片描述

數(shù)據(jù)插入。調(diào)用cursor對(duì)象的execute執(zhí)行insert語(yǔ)句可以插入單條數(shù)據(jù),同時(shí)調(diào)用executemany函數(shù)則可以插入多條數(shù)據(jù),參考文獻(xiàn)3中給出的多條數(shù)據(jù)插入示例如下。插入語(yǔ)句執(zhí)行后,需要調(diào)用Connection對(duì)象的commit函數(shù),否則就不會(huì)生效,也可以配置Connection對(duì)象的autocommit,讓語(yǔ)句自動(dòng)提交生效。

在這里插入圖片描述

基于參考文獻(xiàn)3及上圖中的示例,測(cè)試插入單條數(shù)據(jù)和多條數(shù)據(jù),程序及執(zhí)行結(jié)果如下所示。

import pymssql

server = 'XXX.XXX.XXX.XXX'
user = 'XXXXXXX'
password = 'XXXXXXXXXX'
db='EC'

conn = pymssql.connect(server, user, password, db)

cursor = conn.cursor()

##sqlStr="INSERT INTO EnvironmentRecord(CreateTime,DHTState,Humidity,Temperature,FlameValue,MQValue)VALUES('2022-05-23 10:00:00',1,54, 22, 962, 202)"
##cursor.execute(sqlStr)

cursor.executemany(
    "INSERT INTO EnvironmentRecord(CreateTime,DHTState,Humidity,Temperature,FlameValue,MQValue)VALUES(%s,%d,%d,%d,%d,%d)",
    [('2022-05-24 10:00:00',1,54, 22, 962, 202),
     ('2022-05-24 10:10:00',1,54, 22, 962, 202),
     ('2022-05-24 10:20:00',1,54, 22, 962, 202)])
conn.commit()

conn.close()

在這里插入圖片描述

關(guān)于pymssql的詳細(xì)介紹可以查看參考文獻(xiàn)3。本文學(xué)習(xí)了基于pymssql的SqlServer數(shù)據(jù)庫(kù)基本操作方法后,后續(xù)會(huì)嘗試將之前保存到excel文件中的頁(yè)面抓取數(shù)據(jù)保存到SqlServer數(shù)據(jù)庫(kù)。

參考文獻(xiàn)
[1]https://blog.csdn.net/XUMENGCAS/article/details/123419220
[2]https://github.com/pymssql/pymssql
[3]https://pymssql.readthedocs.io/en/latest/index.html

到此這篇關(guān)于python調(diào)用pymssql包操作SqlServer數(shù)據(jù)庫(kù)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python pymssql操作SqlServer內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python利用turtle庫(kù)繪制彩虹代碼示例

    Python利用turtle庫(kù)繪制彩虹代碼示例

    這篇文章主要介紹了Python利用turtle庫(kù)繪制彩虹代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Python字符串對(duì)齊方法使用(ljust()、rjust()和center())

    Python字符串對(duì)齊方法使用(ljust()、rjust()和center())

    這篇文章主要介紹了Python字符串對(duì)齊方法使用(ljust()、rjust()和center()),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Python+selenium實(shí)現(xiàn)截圖圖片并保存截取的圖片

    Python+selenium實(shí)現(xiàn)截圖圖片并保存截取的圖片

    這篇文章介紹如何利用Selenium的方法進(jìn)行截圖并保存截取的圖片,需要的朋友參考下本文
    2018-01-01
  • 超級(jí)詳細(xì)實(shí)用的pycharm常用快捷鍵

    超級(jí)詳細(xì)實(shí)用的pycharm常用快捷鍵

    本文詳細(xì)總結(jié)了Pycharm的常用快捷鍵,下文介紹使用方法和場(chǎng)景, 并不需要記憶這些快捷鍵, 你只需要知道有這些快捷鍵, 再需要用的時(shí)候查看一下, 用的多了自然也就記住了,需要的朋友可以參考下
    2021-05-05
  • Python文本特征抽取與向量化算法學(xué)習(xí)

    Python文本特征抽取與向量化算法學(xué)習(xí)

    這篇文章主要為大家詳細(xì)介紹了Python文本特征抽取與向量化算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 使用pycharm運(yùn)行flask應(yīng)用程序的詳細(xì)教程

    使用pycharm運(yùn)行flask應(yīng)用程序的詳細(xì)教程

    這篇文章主要介紹了使用pycharm運(yùn)行flask應(yīng)用程序,首先大家需要使用pycharm創(chuàng)建你的第一個(gè)app,接下來(lái)就開(kāi)始配置pycharm,需要的朋友可以參考下
    2021-06-06
  • pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn)

    pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn)

    這篇文章主要介紹了pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Python面向?qū)ο缶幊讨?lèi)的進(jìn)階

    Python面向?qū)ο缶幊讨?lèi)的進(jìn)階

    這篇文章主要介紹了Python面向?qū)ο缶幊讨?lèi)的引用,引用 Reference是對(duì)象的指針,引用是內(nèi)存中真實(shí)對(duì)象的指針,表示為變量名或者內(nèi)存地址、每個(gè)對(duì)象存在至少一個(gè)引用,id()函數(shù)用于獲得引用,想具體了解的小伙伴可以參考下面文章的內(nèi)容
    2021-11-11
  • 套娃式文件夾如何通過(guò)Python批量處理

    套娃式文件夾如何通過(guò)Python批量處理

    這篇文章主要介紹了套娃式文件夾如何通過(guò)Python批量處理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Python  OpenCV實(shí)現(xiàn)攝像頭人臉識(shí)別功能

    Python  OpenCV實(shí)現(xiàn)攝像頭人臉識(shí)別功能

    這篇文章主要介紹了Python  OpenCV實(shí)現(xiàn)攝像頭人臉識(shí)別,使用Python 3和OpenCV進(jìn)行攝像頭人臉識(shí)別的基本步驟,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07

最新評(píng)論