教你如何用python運算元據庫mysql!!

膽小的皮皮發表於2019-02-19

前言
首先,安裝需要的環境,Mysql和Python就不說了,必備的東西。

主要是安裝的MySQLdb,可以去sf.net下載,具體地址是http://sourceforge.net/projects/mysql-python/

如果用Ubuntu,直接

sudo apt-get install python-mysqldb

安裝完成之後可以在Python直譯器中測試一下

輸入
Python程式碼  
import MySQLdb
 #注意大小寫!!  

如果不報錯,就證明安裝成功了,可能繼續了

MySQLdb在Python中也就相當於JAVA中的MySQL的JDBC Driver,Python也有類似的資料介面規範Python DB API,MySQLdb就是Mysql的實現。操作也比較簡單和其它平臺或語言運算元據庫一樣,就是建立和資料庫系統的連線,然後給資料庫輸入SQL,再從資料庫獲取結果。

先寫一個最簡單的,建立一個資料庫:


#!/usr/bin/env python #coding=utf-8 ################################### 
#  [@author]
(http://my.oschina.net/arthor) peng 
# @date 2012-05-17 ################################## 
#MySQLdb 示例 
#  ################################## 
import MySQLdb 
#建立和資料庫系統的連線 
conn = MySQLdb.connect(host=`localhost`, user=`root`,passwd=`longforfreedom`)
 #獲取操作遊標
 cursor = conn.cursor() 
#執行SQL,建立一個資料庫
 cursor.execute("""create database python """) 
#關閉連線,釋放資源 
cursor.close();```

建立資料庫,建立表,插入資料,插入多條資料

>**小編推薦一個學python的學習qun 740322234
無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多幹貨和技術資料分享!  
**

!/usr/bin/env python

coding=utf-8

@author peng

@date 2012-05-17

MySQLdb 示例

import MySQLdb

建立和資料庫系統的連線

conn = MySQLdb.connect(host=`localhost`, user=`root`,passwd=`longforfreedom`)

獲取操作遊標

cursor = conn.cursor()

執行SQL,建立一個資料庫.

cursor.execute(“””create database if not exists python”””)

選擇資料庫

conn.select_db(`python`);

執行SQL,建立一個資料表.

cursor.execute(“””create table test(id int, info varchar(100)) “””)
value = [1,”inserted ?”];

插入一條記錄

cursor.execute(“insert into test values(%s,%s)”,value);
values=[]

生成插入引數值

for i in range(20):

values.append((i,`Hello mysqldb, I am recoder ` + str(i)))  

插入多條記錄

cursor.executemany(“””insert into test values(%s,%s) “””,values);

關閉連線,釋放資源

cursor.close();


查詢和插入的流程差不多,只是多了一個得到查詢結果的步驟

!/usr/bin/env python

coding=utf-8

@author peng

@date 2012-05-17

MySQLdb 查詢

import MySQLdb
conn = MySQLdb.connect(host=`localhost`, user=`root`, passwd=`longforfreedom`,db=`python`)
cursor = conn.cursor()
count = cursor.execute(`select * from test`)
print `總共有 %s 條記錄`,count

獲取一條記錄,每條記錄做為一個元組返回

print “只獲取一條記錄:”
result = cursor.fetchone();
print result

print `ID: %s info: %s` % (result[0],result[1])

print `ID: %s info: %s` % result

獲取5條記錄,注意由於之前執行有了fetchone(),所以遊標已經指到第二條記錄了,也就是從第二條開始的所有記錄

print “只獲取5條記錄:”
results = cursor.fetchmany(5)
for r in results:

print r  

print “獲取所有結果:”

重置遊標位置,0,為偏移量,mode=absolute | relative,預設為relative,

cursor.scroll(0,mode=`absolute`)

獲取所有結果

results = cursor.fetchall()
for r in results:

print r  

conn.close()`


相關文章