Python操作SQLite數(shù)據(jù)庫過程解析
SQLite是一款輕型的數(shù)據(jù)庫,是遵守ACID的關系型數(shù)據(jù)庫管理系統(tǒng)。
不像常見的客戶-服務器范例,SQLite引擎不是個程序與之通信的獨立進程,而是連接到程序中成為它的一個主要部分。所以主要的通信協(xié)議是在編程語言內的直接API調用。
Python標準庫包含一個SQLite包裝器:使用模塊sqlite3實現(xiàn)的PySQLite。
下面是一個操作SQLite數(shù)據(jù)庫的例子:創(chuàng)建表、插入記錄、查詢記錄。
import sqlite3
#創(chuàng)建直接到數(shù)據(jù)庫文件的連接,如果文件不存在則自動創(chuàng)建
conn = sqlite3.connect('testdb.db')
#創(chuàng)建一個游標向服務器發(fā)送命令及接收結果
cursor = conn.cursor()
#創(chuàng)建表user
sql = '''
create table user(
id integer primary key,
name text,
sex text
)
'''
#執(zhí)行
cursor.execute(sql)
#插入一條數(shù)據(jù)
sql = 'insert into user(name,sex) values("小明","男")'
cursor.execute(sql)
#插入多條數(shù)據(jù)
sql = 'insert into user(name,sex) values(?,?)'
vals = (('小李','男'),('小紅','女'))
cursor.executemany(sql,vals)
#有增刪改的話需要提交
conn.commit()
sql = 'select * from user'
cursor.execute(sql)
#游標有3個方法可以請求結果
#cursor.fetchone 獲取一行結果
#cursor.fetmany 獲取指定的任意行結果
#cursor.fetchall 獲取所有結果
for row in cursor.fetchall():
print(row)
#關閉游標和連接
cursor.close()
conn.close()
運行結果:
(1, '小明', '男') (2, '小李', '男') (3, '小紅', '女')
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
python基于json文件實現(xiàn)的gearman任務自動重啟代碼實例
這篇文章主要介紹了python基于json文件實現(xiàn)的gearman任務自動重啟代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-08-08
Python函數(shù)必須先定義,后調用說明(函數(shù)調用函數(shù)例外)
這篇文章主要介紹了Python函數(shù)必須先定義,后調用說明(函數(shù)調用函數(shù)例外),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python實現(xiàn)實時數(shù)據(jù)采集新型冠狀病毒數(shù)據(jù)實例
在本篇文章里小編給大家整理了關于Python實現(xiàn)實時數(shù)據(jù)采集新型冠狀病毒數(shù)據(jù)實例內容,有需要的朋友們可以學習參考下。2020-02-02

