《Python》《SQLite》Python連接SQLite數據庫,讀表

    配置Python環境的方法在我的博客中已經詳細介紹。

一、SQLite和PySQLite

    在最近的Python版本中(從2.5開始),SQLite的優勢在於它的一個包裝(PySQLite)已經被包括在標準庫內。SQLite在Python中的模塊名稱爲“sqlite3”,我們可以在Python環境下通話命令import sqlite3驗證Pyhton標準庫中是否含有此模塊。
這裏寫圖片描述
    如上圖所示輸入命令後無任何錯誤提示,便可以直接調用。
    如果出現大量錯誤信息,可能是安裝腳本找不到所需文件。確保你知道庫文件和include文件安裝路徑,將它們顯示地提供給安裝腳本。假設我在/home/mlh/sqlite/current目錄中原地編譯SQLite,那麼頭文件應該可以在/home/mlh/sqlite/current/src和/home/mlh/sqlite/current/build/lib中找到。爲了讓安裝程序能使用這些路徑,需要編輯安裝腳本setup.py。在這個文件中可以設定變量include_dirs和library_dirs:

include_dirs = ['/home/mlh/sqlite/current/src']
library_dirs = ['/home/mlh/sqlite/current/build/lib']

在重新綁定變量之後,剛纔說過的安裝過程應該可以正常進行了。

二、Python與SQLite建立連接

    將SQLite作爲一個模塊導入,模塊名稱爲sqlite3(如果使用的是標準庫)。之後可以創建一個到數據庫文件的連接——如果文件不存在就會自動生成——通過提供一個文件名(可以是文件的絕對路徑或相對路徑):

import sqlite3
conn = sqlite3.connect('F:/test/data.db')

    之後就能獲得連接的遊標:

curs = conn.cursor()

    這個遊標可以用來執行SQL查詢。完成查詢並且做出某些更改後確保已經進行了提交,這樣纔可以將這些修改真正的保存到文件中:

conn.commit()

    可以在每次修改數據後都進行提交,準備關閉數據庫時,使用close方法:

conn.close()

三、讀出SQLite數據庫中的表“demo”的信息

1、在SQLite數據庫中創建一張表“demo”,使用SQL語句創建。

程序代碼:

/*創建表名爲"demo"的表結構*/
create table demo(id integer not null primary key, names text not null, sex text not null, age integer not null);
/*在表中添加數據*/
insert into demo(names,sex,age) values('張三','男',23),('李四','女',18),('王五','男',20),('趙六','男',25);

這裏寫圖片描述

2、先建立起與“data.db”數據庫的連接,再進行SQL語句查詢。

程序代碼:

# -*- coding: UTF-8 -*-

import sqlite3  #輸入sqlite3模塊
import json  #輸入json模塊
import re   #輸入re模塊

conn = sqlite3.connect('F:/test/data.db')  #連接數據庫“data”
curs = conn.cursor() #返回連接的遊標對象

query = 'SELECT * FROM demo'  #SQL語句查詢表“demo”
information = curs.execute(query)
print ' ','name','sex','age'
for inf in information:  #循環輸出列表“demo”的每行內容
	#使用json方法將“unicode”格式打印成中文
	#使用re文法將“[]”去掉
	inf1 = re.sub(r'["[",\]]', '', json.dumps(inf).decode('unicode-escape'))
	inf2 = re.sub(r'[""",\"]', '', inf1)  #使用re方法將“ “” ”去掉
	print inf2
conn.close()  #關閉數據庫

運行結果:
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章