久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python 進階(五):數(shù)據(jù)庫操作之 SQLite

 文炳春秋 2020-03-13

1. 簡介

SQLite 是一種嵌入式關系型數(shù)據(jù)庫,,其本質就是一個文件,,它占用資源低、處理速度快,、跨平臺,、可與 Python、Java 等多種編程語言結合使用,。

SQLite 是一個進程內的庫,,可以自給自足、無服務器,、無需配置,、支持事務,Python 可以通過 sqlite3 模塊與 SQLite3 集成(3 是版本號),,Python 2.5.x 以上版本內置了 sqlite3 模塊,,我們可以直接使用。

2. 數(shù)據(jù)類型

2.1 存儲類型

存儲類型是數(shù)據(jù)保存成文件后的表現(xiàn)形式,,主要包括如下幾種:

類型 描述
NULL 空值
REAL 浮點數(shù)類型
TEXT 字符串,,使用數(shù)據(jù)庫編碼(UTF-8,、UTF-16BE 或 UTF-16LE)存儲
BLOB 二進制表示
INTEGER 有符號的整數(shù)類型

2.2 親和類型

親和類型是數(shù)據(jù)庫表中列數(shù)據(jù)對應存儲類型的傾向性,當數(shù)據(jù)插入時,,字段的數(shù)據(jù)將會優(yōu)先采用親緣類型作為值的存儲方式,,主要包括如下幾種:

類型 描述
NONE 不做任何轉換,直接以該數(shù)據(jù)所屬的數(shù)據(jù)類型進行存儲
TEXT 該列使用存儲類型 NULL,、TEXT 或 BLOB 存儲數(shù)據(jù)
NUMERIC 該列可以包含使用所有五個存儲類型的值
REAL 類似于 NUMERIC,,區(qū)別是它會強制把整數(shù)值轉換為浮點類型
INTEGER 類似于 NUMERIC,,區(qū)別是在執(zhí)行 CAST 表達式時

2.3 聲明類型

聲明類型是我們寫 SQL 時字段定義的類型,,常用的聲明類型與親和類型具有如下對應關系:

聲明類型 親和類型
BLOB NONE
DOUBLE、FLOAT REAL
VARCHAR,、TEXT,、CLOB TEXT
INT、INTEGER,、TINYINT,、BIGINT INTEGER
DECIMAL、BOOLEAN,、DATE,、DATETIME NUMERIC

3. 基本使用

3.1 連接數(shù)據(jù)庫

# 導入模塊
import sqlite3
# 連接數(shù)據(jù)庫
conn = sqlite3.connect('test.db')

數(shù)據(jù)庫不存在會被自動創(chuàng)建。

3.2 游標

連接數(shù)據(jù)庫后,,需要通過游標進行相應 SQL 操作,,所以要先創(chuàng)建游標。

# 創(chuàng)建游標
cs = conn.cursor()

3.3 建表

我們在 test.db 庫中新建一張表 person,。

# 創(chuàng)建表
cs.execute('''CREATE TABLE person
       (id varchar(20) PRIMARY KEY,
        name varchar(20));''')
# 關閉 cursor
cs.close()
# 提交當前事務
conn.commit()
# 關閉連接
conn.close()

3.4 新增

向表 person 中插入幾條數(shù)據(jù),。

# 導入模塊
import sqlite3
# 連接數(shù)據(jù)庫
conn = sqlite3.connect('test.db')
# 創(chuàng)建游標
cs = conn.cursor()
# 新增
cs.execute("INSERT INTO person (id, name) VALUES ('1', '張三')")
cs.execute("INSERT INTO person (id, name) VALUES ('2', '李四')")
cs.execute("INSERT INTO person (id, name) VALUES ('3', '王五')")
cs.execute("INSERT INTO person (id, name) VALUES ('4', '趙六')")
cs.execute("INSERT INTO person (id, name) VALUES ('5', '朱七')")
cs.close()
conn.commit()
conn.close()

3.5 刪除

刪除 person 表中 id 為 3 這條數(shù)據(jù)。

# 導入模塊
import sqlite3
# 連接數(shù)據(jù)庫
conn = sqlite3.connect('test.db')
# 創(chuàng)建游標
cs = conn.cursor()
# 刪除
cs.execute("DELETE FROM person WHERE id = '3'")
conn.commit()
cs.close()
conn.close()

3.6 修改

修改一下 person 表中 id 為 1 這條數(shù)據(jù)的 name 屬性值,。

# 導入模塊
import sqlite3
# 連接數(shù)據(jù)庫
conn = sqlite3.connect('test.db')
# 創(chuàng)建游標
cs = conn.cursor()
# 修改
cs.execute("UPDATE person set name = '張四' WHERE id = '1'")
conn.commit()
cs.close()
conn.close()

3.7 查詢

看一下查詢操作,。

# 導入模塊
import sqlite3
# 連接數(shù)據(jù)庫
conn = sqlite3.connect('test.db')
# 創(chuàng)建游標
cs = conn.cursor()
# 查詢
cs.execute("SELECT id, name FROM person")
# 獲取查詢結果集中的下一行
print(cs.fetchone())
# 獲取查詢結果集中的下幾行
print(cs.fetchmany(2))
# 獲取查詢結果集中剩下的所有行
print(cs.fetchall())
cs.close()
conn.close()

3.8 圖形化工具

我們可以通過 SQLite 圖形化工具 SQLiteStudio 更加直觀的查看其表結構、數(shù)據(jù)等,,下載地址為:https://github.com/pawelsalawa/sqlitestudio/releases,,進到下載頁面后根據(jù)自己的系統(tǒng)選擇下載版本,以 Windows 為例:選擇免安裝版 SQLiteStudio-3.2.1.zip,,下載完畢后解壓,,再點擊 SQLiteStudio.exe 啟動。

啟動后依次點擊:Database,、Add a database,,彈出如下窗口:

我們點擊文件下方右側的綠色加號或文件夾按鈕,接著選擇 test.db 文件,,選完后點擊測試連接按鈕,,如果連接正常,,再點擊 OK 按鈕,最后我們就可以通過 SQLiteStudio 對 test.db 進行直觀的查看了,。


    本站是提供個人知識管理的網(wǎng)絡存儲空間,,所有內容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內容,,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多