日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python 如何操作 SQLite 數據庫

瀏覽:32日期:2022-07-13 17:32:39

寫在之前

SQLite 是一個小型的關系型數據庫,它最大的特點在于不需要單獨的服務、零配置。我們在之前講過的兩個數據庫,不管是 MySQL 還是 MongoDB,都需要我們安裝。安裝之后,然后運行起來,其實這就相當于已經有一個相應的服務在跑著。

SQLite 與前面所說的兩個數據庫不同。首先Python 已經將相應的驅動模塊作為了標準庫的一部分,只要是你安裝了 Python,就可以使用;再者它可以類似于操作文件那樣來操作 SQLite 數據庫文件。還有一點,SQLite 源代碼不受版權限制。

建立連接

SQLite 也是一個關系型數據庫,所以 SQL 可以直接在里面使用。由于 SQLite 的驅動已經在 Python 里面了,所以只要引用就可以直接使用,由于我們之前已經講過 MySQL 了,所以對于本次內容理解起來就容易多了。

>>> import sqlite3>>> conn = sqlite3.connect(’lite.db’)

由上面的代碼我們得到了連接對象,是不是覺得比 MySQL 連接要簡單很多呢?在 sqlite3.connect(’lite.db’) 中,如果已經有了那個數據庫,就直接連接它,如果沒有的話,就會自動建一個。需要注意的是,這里的路徑是可以隨意指定的。

下面的代碼顯示的是連接對象的屬性和方法:

>>> dir(conn)[’DataError’, ’DatabaseError’, ’Error’, ’IntegrityError’, ’InterfaceError’, ’InternalError’, ’NotSupportedError’, ’OperationalError’, ’ProgrammingError’, ’Warning’, ’__call__’, ’__class__’, ’__delattr__’, ’__dir__’, ’__doc__’, ’__enter__’, ’__eq__’, ’__exit__’, ’__format__’, ’__ge__’, ’__getattribute__’, ’__gt__’, ’__hash__’, ’__init__’, ’__init_subclass__’, ’__le__’, ’__lt__’, ’__ne__’, ’__new__’, ’__reduce__’, ’__reduce_ex__’, ’__repr__’, ’__setattr__’, ’__sizeof__’, ’__str__’, ’__subclasshook__’, ’close’, ’commit’, ’create_aggregate’, ’create_collation’, ’create_function’, ’cursor’, ’execute’, ’executemany’, ’executescript’, ’in_transaction’, ’interrupt’, ’isolation_level’, ’iterdump’, ’rollback’, ’row_factory’, ’set_authorizer’, ’set_progress_handler’, ’set_trace_callback’, ’text_factory’, ’total_changes’]

建立游標

這一步其實跟 MySQL 也很類似,連接了數據庫之后,要建立游標對象:

>>> cur = conn.cursor()

接下來就是對數據庫內容的操作,都是用游標對象方法來實現:

>>> dir(cur)[’__class__’, ’__delattr__’, ’__dir__’, ’__doc__’, ’__eq__’, ’__format__’, ’__ge__’, ’__getattribute__’, ’__gt__’, ’__hash__’, ’__init__’, ’__init_subclass__’, ’__iter__’, ’__le__’, ’__lt__’, ’__ne__’, ’__new__’, ’__next__’, ’__reduce__’, ’__reduce_ex__’, ’__repr__’, ’__setattr__’, ’__sizeof__’, ’__str__’, ’__subclasshook__’, ’arraysize’, ’close’, ’connection’, ’description’, ’execute’, ’executemany’, ’executescript’, ’fetchall’, ’fetchmany’, ’fetchone’, ’lastrowid’, ’row_factory’, ’rowcount’, ’setinputsizes’, ’setoutputsize’]

我們在里面看到了一系列我們熟悉的名稱:close()、execute()、fetchall() 等。

1.創建數據庫表

面對 SQLite 數據庫,我們之前熟悉的 SQL 指令都可以用:

>>> create_table = 'create table books (title,author,language)'>>> cur.execute(create_table)<sqlite3.Cursor object at 0x104f296c0>

這樣就在數據庫 lite.db 中建立了一個表 books。對這個表可以增加數據:

>>> cur.execute(’insert into books values('python basic','rocky','python')’)<sqlite3.Cursor object at 0x104f296c0>

為了保證數據能夠保存,還要進行如下操作:

>>> conn.commit()>>> cur.close()>>> conn.close()

以上,在剛才建立的數據庫中已經有了一個表 books,表中已經有了一條記錄。

2.查詢

保存以后我們來查詢一下:

>>> conn = sqlite3.connect(’lite.db’)>>> cur = conn.cursor()>>> cur.execute(’select * from books’)<sqlite3.Cursor object at 0x104f297a0>>>> cur.fetchall()[(’python basic’, ’rocky’, ’python’)]

3.批量插入

我們來給 books 表中多增加一些內容,以便于我們進行其它的操作:

>>> books = [('first book','first','c'),('second book','second','c++'),('third book','third','java')]

這次我們來一個批量插入:

>>> cur.executemany(’insert into books values (?,?,?)’,books)<sqlite3.Cursor object at 0x104f297a0>>>> conn.commit()

接下來我們用循環語句來打印一下查詢結果:

>>> rows = cur.execute(’select * from books’)>>> for row in rows:... print(row)... (’python basic’, ’rocky’, ’python’)(’first book’, ’first’, ’c’)(’second book’, ’second’, ’c++’)(’third book’, ’third’, ’java’)

4.更新

正如我們前面所說的,在 cur.execute() 中,可以寫 SQL 語句來操作數據庫:

>>> cur.execute('update books set title=’physics’ where author=’first’')<sqlite3.Cursor object at 0x104f297a0>>>> conn.commit()

接下來我們按照條件查詢來看一看:

>>> cur.execute('select * from books where author=’first’')<sqlite3.Cursor object at 0x104f297a0>>>> cur.fetchall()[(’physics’, ’first’, ’c’)]

5.刪除

刪除也是操作數據庫必須的動作:

>>> cur.execute('select * from books')<sqlite3.Cursor object at 0x104f297a0>>>> cur.fetchall()[(’python basic’, ’rocky’, ’python’), (’physics’, ’first’, ’c’), (’third book’, ’third’, ’java’)]

最后不要忘記在完成對數據庫的操作以后,一定記得給人家「關上門」:

>>> cur.close()>>> conn.close()

寫在之后

基本的知識差不多就是這些,當然肯定不局限于此。在實際的編程中我們肯定會遇到很多的問題,大家記得要多多去查閱官方文檔,學會解決問題。

至此,Python 操作數據這一部分就結束了,其實不光是這一個章節的結束,我計劃里面的整個「零基礎入門學習 Python」這個系列也到此結束了,后續隨著我碰到的知識的增加,還會再給大家更新關于 Python 方面的東西,讓我們一起加油。

如果你覺得本篇文章對你有所幫助的話,歡迎點贊 + 關注,期待和你的交流。

The end。

以上就是Python 如何操作 SQLite 數據庫的詳細內容,更多關于python操作 SQLite 數據庫的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
青青伊人久久| 亚洲aⅴ网站| 国产精品网址| 欧美亚洲综合视频| 欧美日一区二区在线观看| 日韩精品第二页| 青草国产精品| 欧美日韩夜夜| 精品美女在线视频| 久久久久伊人| 黄毛片在线观看| 国产成人精品亚洲日本在线观看| 色综合五月天| 欧美成人久久| 亚洲综合二区| 亚洲精品观看| 国产乱子精品一区二区在线观看 | 国产精品一区二区av交换| 97精品久久| 精品一区二区三区视频在线播放| 捆绑调教日本一区二区三区| 久久久精品久久久久久96| 一本一道久久a久久精品蜜桃| 丝袜亚洲另类欧美| 欧美视频久久| 天堂√中文最新版在线| 亚洲成人一区| 日韩一区二区三区四区五区| 麻豆视频久久| 99久久婷婷| 亚洲精品日本| 精品一区二区三区视频在线播放| 色偷偷偷在线视频播放| 欧美高清不卡| 日韩精品社区| 国产中文字幕一区二区三区| 99视频精品全部免费在线视频| 日韩制服丝袜先锋影音| 欧美1区2区3| 亚洲91久久| 中文字幕一区二区av| 久久99青青| 91久久久久| 国产精品v日韩精品v欧美精品网站| 精品欧美一区二区三区在线观看| 老司机久久99久久精品播放免费| 国产精品视频首页| 成人羞羞视频在线看网址| 伊人久久大香伊蕉在人线观看热v| 国产精品网址| 黄色亚洲大片免费在线观看| 国产亚洲电影| 久久精品国内一区二区三区水蜜桃| 久久午夜精品一区二区| 国产情侣一区| 欧美日一区二区| 国产三级一区| 五月天激情综合网| 欧美精品不卡| 日韩中文欧美在线| 国产精品精品国产一区二区| 国产亚洲精品v| 国产无遮挡裸体免费久久| 久久伦理在线| 国产精品视频一区二区三区四蜜臂| 999精品色在线播放| 欧美久久一区二区三区| 欧美日韩一区二区综合| 国产精品一区二区三区四区在线观看 | 欧美精选一区二区三区| 欧美在线日韩| 伊人久久亚洲热| 里番精品3d一二三区| 日韩精品一级中文字幕精品视频免费观看| 国产一区二区久久久久| 综合国产视频| 蜜桃成人av| 国产成人精品免费视| 少妇精品在线| 亚洲v在线看| 精品一区二区三区中文字幕视频| 丝袜美腿一区二区三区| 免费污视频在线一区| 国产精品成人国产| 亚洲日本在线观看视频| 欧美.日韩.国产.一区.二区| 国产一区二区三区探花| 欧美日韩中出| 亚洲一二av| 99re国产精品| 日韩国产网站| аⅴ资源天堂资源库在线| 国产乱码精品一区二区三区四区 | 国产一区二区三区自拍| 国产一区一一区高清不卡| 欧美日韩一区自拍| 在线观看亚洲精品福利片| 亚洲一本视频| 超碰在线99| 国内精品伊人| 欧美成a人片免费观看久久五月天| 亚洲日产av中文字幕| 日韩一区二区久久| 国产99久久| 欧美天堂视频| 91一区二区| 久久女人天堂| 国产乱论精品| 国产美女亚洲精品7777| 视频一区日韩精品| 免费成人性网站| 久久99伊人| 日韩中文字幕亚洲一区二区va在线 | 中文字幕一区二区三区四区久久 | 不卡中文字幕| 欧美日韩国产高清电影| 日韩在线观看| 91精品韩国| 美女网站视频一区| 日韩精品第一区| 久久高清精品| 欧美日韩国产在线观看网站| 婷婷成人基地| 亚洲欧美激情诱惑| 亚洲一区日韩在线| 国产毛片久久| 免播放器亚洲一区| 日韩精品视频网站| 国产精品综合| 欧美成人精品一级| 成人在线视频免费看| 国产一二在线播放| 91精品一区二区三区综合| 在线日韩视频| 99视频在线精品国自产拍免费观看| 欧美日韩国产传媒| 蜜桃久久av一区| 日本中文字幕不卡| 国产精品流白浆在线观看| 久久99精品久久久野外观看| 成人在线免费观看91| 91看片一区| 在线午夜精品| 亚洲啊v在线免费视频| 国产精品麻豆成人av电影艾秋 | 久久99伊人| 日韩一区二区三区在线看| 国产乱码精品一区二区亚洲| 国内精品麻豆美女在线播放视频| 999国产精品| 日本欧美在线看| 91九色综合| 一区二区三区四区日本视频| 亚洲一级高清| 婷婷亚洲成人| 国产一区二区三区四区五区传媒| 私拍精品福利视频在线一区| 国产亚洲一级| 国产一级成人av| 亚洲天堂一区二区| 婷婷亚洲五月色综合| 青青草国产成人99久久| 另类综合日韩欧美亚洲| 久久精品观看| 日韩一区精品| 成人av三级| 免费人成网站在线观看欧美高清| 国产精品伊人| 九九综合九九| 国产日产精品_国产精品毛片| 在线中文字幕播放| 久久国产中文字幕| 婷婷视频一区二区三区| 精品女同一区二区三区在线观看| 欧美1区免费| 欧美午夜三级| 日韩精品看片| 日韩国产欧美三级| 欧美二三四区| 日韩av网站免费在线| 毛片在线网站| 亚洲精品乱码日韩| 视频二区不卡| 国产精品一站二站| 欧美日韩国产在线观看网站| 国产一卡不卡| 午夜久久99| 精品国产亚洲一区二区三区在线| 99riav1国产精品视频| 国产激情久久| 亚洲欧美日韩国产| 国产 日韩 欧美 综合 一区| 欧美大黑bbbbbbbbb在线| 欧美视频精品全部免费观看| 久久精品国产68国产精品亚洲| 国产欧美日韩亚洲一区二区三区| 国产精品av久久久久久麻豆网| 国产伦理一区| 亚洲欧美视频| 亚洲深夜视频|