日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python用sqlite数据库,python 中使用sqlite数据库

發(fā)布時(shí)間:2025/3/12 python 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python用sqlite数据库,python 中使用sqlite数据库 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

sqlite3是使用文件作為數(shù)據(jù)庫,它屬于輕量級(jí)數(shù)據(jù)庫,支持在多平臺(tái)下使用。

SQLite數(shù)據(jù)庫是一款非常小巧的嵌入式開源數(shù)據(jù)庫軟件,也就是說沒有獨(dú)立的維護(hù)進(jìn)程,所有的維護(hù)都來自于程序本身。它是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。SQLite第一個(gè)Alpha版本誕生于2000年5月. 至今已經(jīng)有10個(gè)年頭,SQLite也迎來了一個(gè)版本 SQLite 3已經(jīng)發(fā)布。

在python語言中使用sqlite的方法如下:

1. 引用sqlite3數(shù)據(jù)庫

import sqlite3

2. 是歐諾有sqlite的connect()方法創(chuàng)建數(shù)據(jù)庫(如果數(shù)據(jù)庫不存在的情況下)或打開數(shù)據(jù)庫,可以在這個(gè)方法中數(shù)據(jù)的編碼格式,例:

#連接tat.db數(shù)據(jù)庫

conn = sqlite3.connect('/home/ubuntu/tat.db',encoding=‘cp936’)

cp936是python中自帶的編碼格式,其實(shí)也就是GBK編碼。

3. 常用的方法

上述的數(shù)據(jù)庫對(duì)象conn常用的操作有:

commit() --------------------事物提交

rollback()-------------------事物回滾

close() ---------------------關(guān)閉一個(gè)數(shù)據(jù)連接

cursor() --------------------創(chuàng)建一個(gè)游標(biāo)

創(chuàng)建的游標(biāo)對(duì)象,可以執(zhí)行sql語句等方法,例:

execute()----------------------執(zhí)行sql語句

executemany()------------------執(zhí)行多條sql語句

close() -----------------------關(guān)閉游標(biāo)

fetchone()---------------------從結(jié)果中取一條記錄

fetchmany()--------------------從結(jié)果中取多條語句

fetchall()---------------------從結(jié)果中取所有的記錄

scroll()-----------------------游標(biāo)滾動(dòng)

4. 關(guān)于sql語句建表和數(shù)據(jù)庫的增刪改查操作與MYsql數(shù)據(jù)庫相同

#!/usr/bin/python

#-*- coding: utf-8 -*-

import sqlite3

#連接數(shù)據(jù)庫tat

conn = sqlite3.connect('/home/ubuntu/tat.db')

#設(shè)置事務(wù)隔離級(jí)別,默認(rèn)用戶修改數(shù)據(jù)需要commit才能修改成功,設(shè)置為None則每次修改都自動(dòng)提交,否則為"" #conn.isolation_level = None

#獲取到游標(biāo)對(duì)象

cu = conn.cursor()

#創(chuàng)建一個(gè)表

cu.execute('''create table if not exists user(

id integer primary key autoincrement,

name varchar(10))''')

#插入數(shù)據(jù)

cu.execute('insert into user(name) values("jordy")')

#如果隔離級(jí)別不是自動(dòng)提交就需要手動(dòng)執(zhí)行commit

conn.commit()

#用游標(biāo)來查詢就可以獲取到結(jié)果

cu.execute("select * from user")

#獲取所有結(jié)果

res = cu.fetchall()

for row in res:

print row[0],row[1].encode('utf-8')

#更新語句

cu.execute('update user set name="邪少" where id=2')

conn.commit()

#刪除語句

cu.execute('delete from user where id=1')

conn.commit()

附 ? sqlite3官方網(wǎng)站:? http://docs.python.org/library/sqlite3.html#sqlite3-controlling-transactions

總結(jié)

以上是生活随笔為你收集整理的python用sqlite数据库,python 中使用sqlite数据库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。