SQLite是一個嵌入式的數據庫,他的數據庫是個文件。python
SQLite自己是c語音寫的,因此常常被集成到各類應用程序。mysql
python就內置了SQLite,因此python使用SQLite不須要安裝任何東西,直接進行使用。sql
鏈接到數據庫後須要打開遊標,稱之爲Cursor,經過Cursor執行sql預計和執行後的結果。數據庫
python中內置的與mysql交互的方法以下:fetch
#導入SQLit3 import sqlite3 #鏈接sqlite3數據庫,數據庫文件是test.db,若是文件不存在會自動在當前目錄中建立 conn = sqlite3.connect('test.db') #建立一個Cursor cursor = conn.cursor() #建立一個user表 cursor.execute('create table user (id varchar(20) primary key, name varchar(20) )') #插入一條記錄 cursor.execute(inser into user(id , name) values('1', 'yaohong' )) #獲取插入的條數 print cursor.rowcount #關閉cursor cursor.close() #提交事務 cursor.commit() #關閉conn conn.close()
查詢結果code
conn = sqlite3.connect('test.db') cursor = conn.cursor() #查詢 cursor.executr('select * from user where id=?', ('1',)) #得到查詢結果 values = cursor.fetchall() print values cursor.close() conn.close()
查詢獲取的結果都是一個list,每一個元素都是一個tuple。sqlite
要確保打開的Connection對象和Cursor對象都正確地被關閉,不然,資源就會泄露。對象
如何才能確保出錯的狀況下也關閉掉Connection對象和Cursor對象呢?請回憶try:...except:...finally:...
的用法。blog