close
【SQLite3】輕型資料庫(二)快速上手篇:Python常用的7大SQLite3語句!萬解啦!開啟執行存檔關閉資料庫
繼上篇【SQLite3】輕型資料庫(一)快速上手篇:不用會太多SQL語法也能打造自己的財務資料庫!手把手交到會!
而後帶大家看一下常用的SQLite3語句,應該說基本上就用到這些就可以見一個自己的資料庫了,下一篇就手把手帶大家建一個資料庫
一、sqlite3常用語句
import pandas, numpy
import datetime
import sqlite3
# 選擇sqlite資料庫
conn = sqlite3.connect('base.db') # 不存在則會自動建立
# 建立cursor
c = conn.cursor()
# 執行 sql語句
c.execute(sql)
# 取出select後的資料
one = c.fetchone # 只取最後一筆
data = c.fetchall() # 取出全部
# 存檔
conn.commit() # 如果只是select就沒差 但有insert就有差
# 關閉資料庫
conn.close()
# 在pandas下把df存進sqlite
# =============================================================================
# name: 表名稱
# con: 資料庫名稱
# if_exists: 如果表存在就 >>> fail:不管 replace:取代 append:往後插入
# index是否要把df的index也存入並建立索引
# =============================================================================
df.to_sql(name='log', con=conn, if_exists='replace', index=True)
二、超常用sql語法
同上一篇再次強調這幾個sql語法,因為太常用到了
在python中你可以寫法可以如下:
sql的地方放我們的sql語法而後去c.execute(sql)
如果語句中有insert記得要conn.commit()才會寫入喔!
懂了之後往下看一下常用語法吧!
# 連接資料庫
conn = sqlite3.connect('base.db')
c = conn.cursor()
# sql 語法
sql = '''
CREATE TABLE TWSE_Daily_Info1(
Date TEXT NOT NULL,
Exchange TEXT,
Symbol TEXT NOT NULL,
Name TEXT NOT NULL,
Volume INTEGER,
Shares INTEGER,
Transactions INTEGER,
PRIMARY KEY("Date" , "Symbol"));'''
# 執行 sql 語法
c.execute(sql)
# 存檔 關閉
conn.commit()
conn.close()
1.創建表CREATE TABLE
CREATE TABLE "表名稱" (
"欄位名稱" 資料型態 欄位相關設定,
"欄位名稱" 資料型態 欄位相關設定,
表相關設定
);
CREATE TABLE "TestTable2" (
"ID" INTEGER NOT NULL,
"Contract" TEXT,
PRIMARY KEY("ID" AUTOINCREMENT)
);
2.查詢資料 SELECT
SELECT 欄位 FROM 表 WHERE 篩選規則 ORDER BY 排序欄位 排序規則
SELECT * FROM TestTable WHERE Symbol in ("2412") ORDER BY DATE ASC
3.插入(新增)資料 INSERT
INSERT INTO 表 ("欄位", "欄位", "欄位", "欄位", "欄位")
VALUES("值", "值", "值", "值", "值")
INSERT INTO TestTable ("Date", "Exchange", "Symbol", "Name", "Close")
VALUES("2021/6/5", "TWSE", "2330", "台積電", "700")
三、後記
用的SQLite3語句,應該說基本上就用到這些就可以見一個自己的資料庫了,下一篇就手把手帶大家建一個資料庫
還不知道怎麼學python或基礎不穩的可以看:
文章標籤
全站熱搜