python資料庫如何連線SQLite詳解

2022-09-20 10:48:09 字數 2450 閱讀 3048

目錄

sqlite是python自帶的一款基於記憶體或硬碟的、開源的、關係型的輕量級資料庫。這意味著無需**安裝sqlite資料庫產品和對應的資料庫驅動程式,可以被python語言以模組匯入方式直接呼叫。其位置在python的安裝路徑為lib/sqlite3/。

對關係型資料庫進行讀寫操作,需要建立如下幾個操作步驟:

import sqlite3 #匯入sqlite3模組

conn = sqlite3.connect(":memory:") #建立乙個基於記憶體的資料庫

conn.close() #關閉與資料庫的連線

當對資料庫操作完成時,建議養成及時關閉資料庫連線的好習慣,避免開啟資料庫連線過多,消耗記憶體儲存空間。

import sqlite3 #匯入sqlite3模組

conn = sqlite3.connect("first.db") #建立乙個基於硬碟的資料庫例項

conn.close() #關閉與資料庫的連線

效果:執行**後,在python的安裝路徑下生成first.db檔案。

基於記憶體資料庫容易丟失(特別是關機或因突發事故就會丟失記憶體裡的資料),基於硬碟資料可以持久儲存基於記憶體資料讀寫速度快,基於硬碟資料讀寫速度慢基於記憶體資料儲存容量受內容受內容可用空間限制,基於硬碟資料儲存容量受限於硬碟可用空間

在關係型資料庫中,需要建立關係型特徵的表結構,才能往表裡寫入資料以及進行資料庫的操作。

將下列二維結構化記錄表依次存放到資料庫表中。

建立乙個對應的資料庫表需要建立釣魚日期、名稱、數量、**、備註五個字段。其中,字段值需要確定資料型別,如數量為整數,**為浮點數,釣魚日期、名稱、備註為字元型。

import sqlite3 #匯入sqlite3模組

conn = sqlite3.connect("first.db") #建立乙個基於硬碟的資料庫例項

cur = conn.cursor() #通過建立資料庫游標物件,準備讀寫操作

cur.execute("create table t_fish(datewww.cppcns.com text,name text,nums int,price real,explain text)"wjwpdnec) #根據上表結構建立對應的表結構物件

cur.execute("insert into t_fish values('2018-3-28','黑魚',10,28.3,'tom')") #插入一行記錄結果資訊

conn.commit() #儲存提交,確保資料儲存成功

conn.close() #關閉與資料庫的連線

在first.db資料庫中建立乙個t_fish表,然後往表裡插入一行記錄,最後提交儲存並關閉資料庫連線。

游標起指向某資料庫的某錶的作用,只有建立了確定的表的指向關係,才能進行插入、修改、刪除、查詢等操作。

import sqlite3

conn = sqlite3.co"first.db") #連線資料庫

cur = conn.cursor() #建立關聯資料庫的游標例項

cur.execute("select * from t_fish") #對t_fish表執行資料查詢命令

for row in cur.fetchall(): #以一條記錄為元組單位返回結果給row

print(row)

conn.close() #關閉資料庫

效果:import sqlite3

conn = sqlite3.connect("first.db") #連線資料庫

cur = conn.cursor() #建立游標例項

cur.execute("insert into t_fish values('2018-3-29','鯉魚',17,10.3,'john')") #插入一條資料

cur.execute("insert into t_fish values('2018-3-30','鰱魚',9,9.2,'tim')")

conn.commit() #提交資料程式設計客棧儲存到磁碟

cur.execute("select * from t_fish") #查詢表裡的記錄

for row in cur.fetchall():

print(row)

cur.execute("delete from t_fish where nums程式設計客棧=10") #刪除數量為10的記錄

conn.commit() #提交結果到硬碟

print('=='*50)

cur.execute("select * from t_fish") #查詢t_fish表裡的記錄

for row in cur.fetchall():

print(row)

conn.close()

效果:本文標題: python資料庫如何連線sqlite詳解

本文位址:

Hibernate不同資料庫的連線及SQL方言

net.sourceforge.jtds.jdbc.driver jdbc jtds sqlserver alex 1134 news org.hibernate.dialect.sqlserverdialect sasa true rdbms 方言 db2 org.hibernate.dialec...

oracle幾條殺掉資料庫連線的相關SQL語句

幾條殺掉資料庫連線的sql語句。應該用有管理員許可權的賬號登入資料庫,加以執行。我也不大理解,基本抄來的,備忘。不知道有啥用 select sysdate as 當前時間,sys.login user as 資料庫使用者,machine as 登入機器名,sys context userenv ip...

雲資料庫如何通過外網連線?如何連線雲資料庫?

linux系統 1.準備環境 雲伺服器 193.112.1.43 公 172.16.0.23 內 雲資料庫pgsql 內網 172.16.32.98 5432 同一私有網路,缺省內網互通 2.雲伺服器上做如下 iptables t nat a prerouting d 172.16.0.23 p t...