python读数据库的通信协议是,Python操作SQLite数据库过程解析
SQLite是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。
不像常見的客戶-服務(wù)器范例,SQLite引擎不是個(gè)程序與之通信的獨(dú)立進(jìn)程,而是連接到程序中成為它的一個(gè)主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)的直接API調(diào)用。
Python標(biāo)準(zhǔn)庫包含一個(gè)SQLite包裝器:使用模塊sqlite3實(shí)現(xiàn)的PySQLite。
下面是一個(gè)操作SQLite數(shù)據(jù)庫的例子:創(chuàng)建表、插入記錄、查詢記錄。
import sqlite3
#創(chuàng)建直接到數(shù)據(jù)庫文件的連接,如果文件不存在則自動(dòng)創(chuàng)建
conn = sqlite3.connect('testdb.db')
#創(chuàng)建一個(gè)游標(biāo)向服務(wù)器發(fā)送命令及接收結(jié)果
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)
#游標(biāo)有3個(gè)方法可以請(qǐng)求結(jié)果
#cursor.fetchone 獲取一行結(jié)果
#cursor.fetmany 獲取指定的任意行結(jié)果
#cursor.fetchall 獲取所有結(jié)果
for row in cursor.fetchall():
print(row)
#關(guān)閉游標(biāo)和連接
cursor.close()
conn.close()
運(yùn)行結(jié)果:
(1, '小明', '男')
(2, '小李', '男')
(3, '小紅', '女')
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持谷谷點(diǎn)程序。
總結(jié)
以上是生活随笔為你收集整理的python读数据库的通信协议是,Python操作SQLite数据库过程解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java定时增量同步,一种可配置的定时数
- 下一篇: php如何设置断点调试,使用 PHPSt