自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python 連接數(shù)據(jù)庫的多種方法

開發(fā) 后端
Python是一種計(jì)算機(jī)程序設(shè)計(jì)語言,它是一種動態(tài)的、面向?qū)ο蟮哪_本語言。它是一種跨平臺的,可以運(yùn)行在 Windows,Mac和 Linux/Unix系統(tǒng)上。

 Python是一種計(jì)算機(jī)程序設(shè)計(jì)語言,它是一種動態(tài)的、面向?qū)ο蟮哪_本語言。它是一種跨平臺的,可以運(yùn)行在 Windows,Mac和 Linux/Unix系統(tǒng)上。

 

在日常使用中需要對大量數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,那么就必然用到數(shù)據(jù)庫,我們常用的數(shù)據(jù)庫有 SQL Server , MySQL , Oracle , DB2 , SQLite ,Hive ,PostgreSQL , MongoDB還有其他常用的 Microsoft Access,Microsoft Excel等。

今天主要介紹比較常用的庫,其中兩個(gè)是:pyodbc 和 pymssql,他們可以連接多個(gè)常用數(shù)據(jù)庫。

首先是需要安裝Python, 根據(jù)操作系統(tǒng)選擇對應(yīng)平臺的Pyhon版本,可以在官網(wǎng)下載。

 

然后就是安裝 pyodbc,在聯(lián)網(wǎng)情況下,打開 python 軟件,輸入:pip install pyodbc

等待安裝完成。然后我們就可以對數(shù)據(jù)庫進(jìn)行操作了,比如:連接、查詢、插入、修改、刪除等操作。

下面主要介紹如何實(shí)現(xiàn)對數(shù)據(jù)庫的操作:

***,連接數(shù)據(jù)庫。從GitHub上可以查詢到如下 pyodbc 連接 SQL Server 的要求:

Microsoft have written and distributed multiple ODBC drivers for SQL Server:

  • {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
  • {ODBC Driver 11 for SQL Server} - supports SQL Server 2005 through 2014
  • {ODBC Driver 13 for SQL Server} - supports SQL Server 2005 through 2016
  • {ODBC Driver 13.1 for SQL Server} - supports SQL Server 2008 through 2016
  • {ODBC Driver 17 for SQL Server} - supports SQL Server 2008 through 2017
  1. import pyodbc 
  2. cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=192.168.1.6;DATABASE=test;UID=sa;PWD=Admin123'

DRIVER:對應(yīng)數(shù)據(jù)庫版本的驅(qū)動器,SQL server 2000是“SQL Server”;

SERVER:數(shù)據(jù)庫服務(wù)器名稱或者數(shù)據(jù)庫服務(wù)器的IP地址;

DATABASE:數(shù)據(jù)庫名稱,UID:賬號,PWD:密碼。

第二,查詢數(shù)據(jù)庫

cursor = cnxn.cursor() #獲得游標(biāo)

cursor.execute("select * from test.dbo.JZGK") #執(zhí)行SQL的查詢語句

rows = cursor.fetchall() #獲得所有數(shù)據(jù),返回一個(gè)list對象

for row in rows: #使用for循環(huán)對查詢的數(shù)據(jù)遍歷并打印出來

print(row.LoopName, row.Press,row.Temp,row.Flow,row.Time_Stamp)

 

第三,數(shù)據(jù)庫中插入數(shù)據(jù)

import pyodbc

cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=192.168.1.6;DATABASE=test;UID=sa;PWD=Admin123')

cursor = cnxn.cursor()

cursor.execute("insert into products(id, name) values ('3', 'abd')") #使用SQL的insert語句向數(shù)據(jù)庫的表products插入一條記錄

cnxn.commit() #操作提交,如果中途出錯(cuò),或連接中斷,則會發(fā)生數(shù)據(jù)回流,不會影響到數(shù)據(jù)庫原有數(shù)據(jù)。

第四,數(shù)據(jù)庫中刪除數(shù)據(jù)

cursor.execute("delete from products where id <> ?", '1') #使用SQL的delete 語句刪除數(shù)據(jù)

  1. print('Deleted {} inferior products'.format(cursor.rowcount))  
  2. cnxn.commit() 

 

第五,數(shù)據(jù)庫中更新數(shù)據(jù)

cursor.execute("UPDATE test SET LoopName=FIQ1005 WHERE LoopName=FIQ1004) #使用SQL的UPDATE 語句更新數(shù)據(jù)

  1. cnxn.commit()  
  2. cnxn.close() 

注意:所有的SQL操作完成后需要關(guān)閉數(shù)據(jù)庫連接

作者劍控老羅

具有10年工業(yè)自動化領(lǐng)域SCADA,DCS,PLC等項(xiàng)目實(shí)施經(jīng)驗(yàn),熟悉石化行業(yè),油田數(shù)字化行業(yè),熟悉多個(gè)品牌PLC,HMI,SCADA,數(shù)據(jù)庫等。

責(zé)任編輯:武曉燕 來源: 劍指工控
相關(guān)推薦

2009-08-25 11:35:27

C#連接數(shù)據(jù)庫

2010-08-04 10:32:56

Flex連接數(shù)據(jù)庫

2010-09-13 15:41:23

sql server數(shù)

2011-04-18 09:29:40

數(shù)據(jù)庫連接數(shù)

2009-08-18 11:23:11

2009-06-17 14:40:55

Java網(wǎng)絡(luò)編程連接數(shù)據(jù)庫

2009-08-25 14:59:36

ASP.NET和C#連

2010-09-08 13:53:10

.NET連接Sybas

2010-03-05 16:03:30

Python連接數(shù)據(jù)庫

2010-10-12 12:00:42

MySQL連接

2010-07-29 09:56:45

Flex數(shù)據(jù)庫

2009-07-06 17:23:34

JDBC連接數(shù)據(jù)庫

2011-03-16 17:14:17

JavaBean數(shù)據(jù)庫

2024-01-12 08:40:56

Python計(jì)算質(zhì)數(shù)質(zhì)數(shù)

2009-08-25 16:01:32

C#.NET連接數(shù)據(jù)庫

2009-07-22 11:33:14

JDBC連接Sybas

2011-04-25 09:53:31

C++mysql

2009-04-20 14:29:41

Oracle連接創(chuàng)建連接

2011-05-24 09:18:59

C++連接mysql數(shù)據(jù)庫

2009-07-17 15:34:37

Java Swing連接數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號