最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python操作SQLite數(shù)據(jù)庫的方法詳解【導(dǎo)入,創(chuàng)建,游標(biāo),增刪改查等】

 更新時(shí)間:2017年07月11日 11:25:30   作者:微煙波  
這篇文章主要介紹了Python操作SQLite數(shù)據(jù)庫的方法,簡單說明了sqlite數(shù)據(jù)庫的相關(guān)概念,并結(jié)合實(shí)例形式較為詳細(xì)的分析了Python針對sqlite數(shù)據(jù)庫的導(dǎo)入,創(chuàng)建,游標(biāo),增刪改查等操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python操作SQLite數(shù)據(jù)庫的方法。分享給大家供大家參考,具體如下:

SQLite簡介

SQLite,是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個(gè)相對小的C庫中。它是D.RichardHipp建立的公有領(lǐng)域項(xià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月。 至2015年已經(jīng)有15個(gè)年頭,SQLite也迎來了一個(gè)版本 SQLite 3已經(jīng)發(fā)布。

SQLite數(shù)據(jù)庫的使用

1.導(dǎo)入Python SQLite數(shù)據(jù)庫模塊

python2.5版本以后內(nèi)置SQLite數(shù)據(jù)庫

import sqlite3

2. 創(chuàng)建/打開數(shù)據(jù)庫

調(diào)用connect函數(shù)的時(shí)候,指定庫名稱,如果指定的數(shù)據(jù)庫存在就直接打開這個(gè)數(shù)據(jù)庫,如果不存在就新創(chuàng)建一個(gè)再打開

conn = sqlite3.connect("E:/test.db")

或者也可以在內(nèi)存中創(chuàng)建

conn = sqlite3.connect(":memory:")

3.數(shù)據(jù)庫連接對象

打開數(shù)據(jù)庫時(shí)返回的對象conn就是一個(gè)數(shù)據(jù)庫連接對象,它可以有以下操作:

commit()--事務(wù)提交
rollback()--事務(wù)回滾
close()--關(guān)閉一個(gè)數(shù)據(jù)庫連接
cursor()--創(chuàng)建一個(gè)游標(biāo)

關(guān)于commit(),如果isolation_level隔離級別默認(rèn),那么每次對數(shù)據(jù)庫的操作,都需要使用該命令,你也可以設(shè)置isolation_level=None,這樣就變?yōu)樽詣犹峤荒J健?/p>

4.使用游標(biāo)查詢數(shù)據(jù)庫

我們需要使用游標(biāo)對象SQL語句查詢數(shù)據(jù)庫,獲得查詢對象。 通過以下方法來定義一個(gè)游標(biāo)。

cu=conn.cursor()

游標(biāo)對象有以下的操作:

execute()--執(zhí)行sql語句
executemany--執(zhí)行多條sql語句
close()--關(guān)閉游標(biāo)
fetchone()--從結(jié)果中取一條記錄,并將游標(biāo)指向下一條記錄
fetchmany()--從結(jié)果中取多條記錄
fetchall()--從結(jié)果中取出所有記錄
scroll()--游標(biāo)滾動

SQLite數(shù)據(jù)庫操作

1. 創(chuàng)建數(shù)據(jù)庫表

cu.execute("create table user (id integer primary key,name varchar(20) UNIQUE,age integer,comment text NULL)")
# 創(chuàng)建一張user表,表中有id(主鍵),名字(唯一),年齡,備注(默認(rèn)為空)

2. 插入數(shù)據(jù)

請注意避免以下寫法:

# 這樣寫會導(dǎo)致注入攻擊
pid=200
c.execute("... where id= '%s'" % id)

正確的做法如下,如果t只是單個(gè)數(shù)值,也要采用t=(n,)的形式,因?yàn)樵M是不可變的。

for user in[(0,'aaa',111,'aaaa'),(1,'bbb',222,'bbbb')]:
 conn.execute("insert into user values (?,?,?,?)", user) # 注意user是元組,不可變
conn.commit() # 注意插入操作之后要進(jìn)行提交

3. 查詢數(shù)據(jù)

cu.execute("select * from user")
cu.fetchone() # 得到游標(biāo)的第一個(gè)值
cu.execute("select * from user")
cu.fetchall() # 使用游標(biāo)的fetch函數(shù),fetchall得到所有的查詢記錄

4. 修改數(shù)據(jù)

cu.execute("update user set name='ccc' where id = 0")
conn.commit()

5. 刪除數(shù)據(jù)

cu.execute("delete from user where id = 1")
conn.commit()

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • pycharm安裝中文插件的2種方法圖文詳解

    pycharm安裝中文插件的2種方法圖文詳解

    PyCharm可以說是當(dāng)今最流行的一款Python?IDE了,下面這篇文章主要給大家介紹了關(guān)于pycharm安裝中文插件的2種方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • 基于python的selenium全網(wǎng)最新超詳細(xì)教程

    基于python的selenium全網(wǎng)最新超詳細(xì)教程

    這篇文章主要介紹了基于python的selenium全網(wǎng)最新超詳細(xì)教程,本文內(nèi)容比較長,結(jié)合實(shí)例代碼給大家講解的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • Python中Arrow庫的時(shí)間操作技法總結(jié)

    Python中Arrow庫的時(shí)間操作技法總結(jié)

    Arrow是一個(gè)功能強(qiáng)大、易用且具有優(yōu)雅設(shè)計(jì)的Python日期時(shí)間庫,它建立在Python的datetime模塊之上,旨在彌補(bǔ)datetime模塊在處理日期時(shí)間時(shí)的一些不足之處,下面我們就來了解一下Arrow庫的常見時(shí)間操作吧
    2023-12-12
  • 使用 Python 破解壓縮文件的密碼的思路詳解

    使用 Python 破解壓縮文件的密碼的思路詳解

    這篇文章主要介紹了使用 Python 破解壓縮文件的密碼的思路詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Python日期時(shí)間Time模塊實(shí)例詳解

    Python日期時(shí)間Time模塊實(shí)例詳解

    這篇文章主要介紹了Python日期時(shí)間Time模塊,結(jié)合實(shí)例形式詳細(xì)分析了Python日期時(shí)間Time模塊常用函數(shù)及相關(guān)操作技巧,需要的朋友可以參考下
    2019-04-04
  • python實(shí)現(xiàn)的分層隨機(jī)抽樣案例

    python實(shí)現(xiàn)的分層隨機(jī)抽樣案例

    這篇文章主要介紹了python實(shí)現(xiàn)的分層隨機(jī)抽樣案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 實(shí)例講解Python中浮點(diǎn)型的基本內(nèi)容

    實(shí)例講解Python中浮點(diǎn)型的基本內(nèi)容

    在本文里小編給大家整理了關(guān)于Python中浮點(diǎn)型的基本知識點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。
    2019-02-02
  • 基于Python編寫一個(gè)串口調(diào)試工具

    基于Python編寫一個(gè)串口調(diào)試工具

    這篇文章主要為大家詳細(xì)介紹了如何基于 Python編寫一個(gè)tkinter 和 pyserial 的串口調(diào)試工具,可以方便地進(jìn)行串口通信的設(shè)置等操作,感興趣的小伙伴可以了解下
    2025-02-02
  • Python網(wǎng)絡(luò)爬蟲之HTTP原理

    Python網(wǎng)絡(luò)爬蟲之HTTP原理

    在寫爬蟲之前,我們還需要了解一些基礎(chǔ)知識,如HTTP原理、網(wǎng)頁的基礎(chǔ)知識、爬蟲的基本原理、Cookies的基本原理等。本文中,我們就對這些基礎(chǔ)知識做一個(gè)簡單的總結(jié),需要的朋友參考一下
    2023-04-04
  • pyinstaller的介紹與使用超詳細(xì)講解

    pyinstaller的介紹與使用超詳細(xì)講解

    PyInstaller是一個(gè)Python庫,可以將Python應(yīng)用程序轉(zhuǎn)換為獨(dú)立的可執(zhí)行文件,下面這篇文章主要給大家介紹了關(guān)于pyinstaller的介紹與使用的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11

最新評論

枣庄市| 麻栗坡县| 闻喜县| 巴彦淖尔市| 沁阳市| 庐江县| 蓬溪县| 滦平县| 咸丰县| 绵阳市| 双辽市| 汝州市| 安泽县| 罗源县| 宁乡县| 盐池县| 阜新| 张北县| 辽源市| 青冈县| 松原市| 湟源县| 余庆县| 赤水市| 普格县| 枣阳市| 凤阳县| 唐山市| 综艺| 汉中市| 德钦县| 手机| 胶州市| 大同市| 志丹县| 古交市| 华宁县| 宜黄县| 和田市| 威宁| 永嘉县|