欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

sqlite3 命令行工具使用指南

 更新時間:2025年06月25日 14:49:40   作者:漫談網絡  
本文系統(tǒng)介紹sqlite3 CLI的啟動、數據庫操作、元數據查詢、數據導入導出及輸出格式化命令,涵蓋文件管理、備份恢復、性能統(tǒng)計等實用功能,并說明命令分類、SQL語法和資源限制,助力高效數據庫管理,對sqlite3 命令行工具相關知識感興趣的朋友一起看看吧

一、啟動與退出

  1. 啟動數據庫連接

    sqlite3 [database_file]  # 打開/創(chuàng)建數據庫文件(如 test.db)
    sqlite3                  # 啟動臨時內存數據庫 (:memory:)
    sqlite3 :memory:         # 顯式啟動內存數據庫
    • 文件不存在時自動創(chuàng)建
    • 不指定文件名則使用臨時內存數據庫(關閉后消失)
  2. 退出 CLI

    .exit
    .quit
    Ctrl + D (Linux/macOS)
    Ctrl + C (Windows)

二、數據庫與文件操作

命令說明示例
.open [FILENAME]打開/切換數據庫.open backup.db
.backup ?DB? FILE在線備份數據庫.backup main backup_2023.db
.restore ?DB? FILE從文件恢復數據庫.restore main backup_2023.db
.dump ?TABLE?導出數據庫為 SQL 腳本.dump > full.sql
.dump users > users.sql
.read FILENAME執(zhí)行 SQL 腳本文件.read import_data.sql
.save FILE保存內存數據庫到文件.save mem_backup.db

三、元數據查詢

命令說明
.databases顯示所有附加數據庫
.tables ?PATTERN?列出表(支持通配符)
.schema ?TABLE?顯示表結構(CREATE語句)
.indexes ?TABLE?列出索引
.fullschema顯示完整 schema(包括隱藏信息)

四、數據操作與導入導出

  1. CSV 導入導出

    -- 設置 CSV 模式
    .mode csv
    .headers on   -- 導出時包含列名
    -- 導入 CSV
    .import users.csv users  -- 文件 → 表
    -- 導出 CSV
    .output users_export.csv
    SELECT * FROM users;
    .output stdout           -- 恢復輸出到終端
  2. 其他格式

    .mode list       -- 自定義分隔符 (默認 '|')
    .mode insert     -- 生成 INSERT 語句
    .mode json       -- JSON 格式輸出
    .separator ","   -- 設置分隔符(如 CSV)
    .nullvalue NULL  -- 指定 NULL 的顯示值

五、查詢輸出格式化

命令效果示例輸出
.mode list豎線分隔1|Alice|30
.mode csvCSV 格式"1","Alice","30"
.mode column表格對齊1 Alice 30
.mode box表格+邊框┌──┬───────┬──┐
│1 │ Alice │30│
.mode jsonJSON 數組[{"id":1,"name":"Alice","age":30}]
.headers on/off顯示/隱藏列名
.width NUM1 NUM2設置列寬.width 5 10 4
.timer on/off顯示查詢耗時Run Time: real 0.002 user 0.000000 sys 0.000000

六、實用功能

命令說明
.show顯示當前所有設置
.stats on/off開關性能統(tǒng)計
.timefmt FORMAT設置日期格式
.shell CMD執(zhí)行系統(tǒng)命令
.system CMD同上(別名)
.prompt MAIN CONTINUE自定義提示符

七、高級操作

  1. 附加多個數據庫

    ATTACH DATABASE 'aux.db' AS aux;
    SELECT * FROM main.users JOIN aux.orders ...;
    .databases  -- 查看附加數據庫
  2. 執(zhí)行 PRAGMA 配置

    PRAGMA journal_mode=WAL;    -- 啟用 WAL 模式
    PRAGMA synchronous=NORMAL;  -- 平衡性能與安全
    PRAGMA foreign_keys=ON;     -- 啟用外鍵約束
  3. 事務控制

    BEGIN TRANSACTION;
    UPDATE accounts SET balance = balance - 100 WHERE id=1;
    UPDATE accounts SET balance = balance + 100 WHERE id=2;
    COMMIT;  -- 或 ROLLBACK

八、快捷示例場景

場景 1:從 CSV 創(chuàng)建新表并導入

sqlite3 finance.db  # 創(chuàng)建數據庫
-- 創(chuàng)建表
CREATE TABLE transactions (
    id INTEGER PRIMARY KEY,
    date TEXT,
    amount REAL,
    description TEXT
);
-- 導入 CSV
.mode csv
.import transactions.csv transactions
-- 驗證數據
SELECT count(*) FROM transactions;

場景 2:備份與恢復

# 完整備份
sqlite3 production.db ".backup main backup_20231001.db"
# 恢復數據庫
sqlite3 restored.db ".restore main backup_20231001.db"

九、注意事項

  1. 命令分類

    • 點命令 (.):以 . 開頭(如 .tables),不需分號結尾
    • SQL 語句:標準 SQL(SELECT, CREATE 等),必須用分號 ; 結尾
  2. 特殊字符轉義
    在字符串中使用單引號時需轉義:

    INSERT INTO logs (message) VALUES ('It''s a test');
  3. 資源限制
    查看限制:PRAGMA compile_options;
    常見限制:SQLITE_MAX_LENGTH=1,000,000,000 (字符串/Blob最大長度)

掌握這些命令后,您可通過 sqlite3 CLI 高效完成日常數據庫管理任務!

到此這篇關于sqlite3 命令行工具使用指南的文章就介紹到這了,更多相關sqlite3 命令行工具內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SQLite3 在嵌入式C環(huán)境中存儲音頻/視頻文件的最優(yōu)方案

    SQLite3 在嵌入式C環(huán)境中存儲音頻/視頻文件的最優(yōu)方案

    本文探討了SQLite3在嵌入式C環(huán)境中存儲音視頻文件的優(yōu)化方案,推薦采用文件路徑存儲結合元數據管理,兼顧效率與資源限制,小文件可使用BLOB存儲,輔以壓縮和故障安全機制,適合資源受限的嵌入式系統(tǒng),對SQLite3存儲文件相關知識感興趣的朋友一起看看吧
    2025-06-06
  • Linux系統(tǒng)上sqlite3的使用操作實例

    Linux系統(tǒng)上sqlite3的使用操作實例

    本文介紹了Linux下sqlite3的安裝、基本操作指令、SQL語句使用、C/C++?API調用及QT集成方法,涵蓋數據庫創(chuàng)建、表結構定義、數據增刪改查、API執(zhí)行與回調機制等內容,對linux?sqlite3使用感興趣的朋友一起看看吧
    2025-06-06
  • SQLite教程(二):C/C++接口簡介

    SQLite教程(二):C/C++接口簡介

    這篇文章主要介紹了SQLite教程(二):C/C++接口簡介,本文講解了C/C++接口概述、核心對象和接口、參數綁定等內容,需要的朋友可以參考下
    2015-05-05
  • SQLite教程(十一):臨時文件

    SQLite教程(十一):臨時文件

    這篇文章主要介紹了SQLite教程(十一):臨時文件,本文講解了七種臨時文件并對它們一一具體說明,并相關的編譯時參數和指令、其它優(yōu)化策略等內容,需要的朋友可以參考下
    2015-05-05
  • sqlite3 top的查詢及l(fā)imit語法介紹

    sqlite3 top的查詢及l(fā)imit語法介紹

    sqlite3中沒有top的語法結構,不過相關的語法能實現(xiàn)跟top語法相同的功能,感興趣的你可以參考下,希望可以幫助到你
    2013-02-02
  • sqlite時間戳轉時間語句(時間轉時間戳)

    sqlite時間戳轉時間語句(時間轉時間戳)

    這篇文章主要介紹了sqlite時間戳轉時間、時間轉時間戳的方法,需要的朋友可以參考下
    2014-06-06
  • Windows下C++使用SQLitede的操作過程

    Windows下C++使用SQLitede的操作過程

    本文介紹了Windows下C++使用SQLite的安裝配置、CppSQLite庫封裝優(yōu)勢、核心功能(如數據庫連接、事務管理)、跨平臺支持及性能優(yōu)化方法,涵蓋從環(huán)境搭建到異常處理的完整開發(fā)流程,適合快速集成SQLite數據庫,感興趣的朋友一起看看吧
    2025-06-06
  • Sqlite數據庫三種加密方法分析和實現(xiàn)

    Sqlite數據庫三種加密方法分析和實現(xiàn)

    SQLite作為一個廣泛使用的數據庫引擎,其內置加密和第三方庫加密方案如SQLCipher提供了保護數據安全和隱私的方法,本文詳細講解如何通過Himi加密方法實現(xiàn)SQLite數據的加密與解密,包括數據的加密預處理、安全存儲、查詢與解密過程
    2025-06-06
  • Win11下基于VS2022編譯SQLite3源碼的實現(xiàn)步驟

    Win11下基于VS2022編譯SQLite3源碼的實現(xiàn)步驟

    本文主要介紹了Win11下基于VS2022編譯SQLite3源碼的實現(xiàn)步驟,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-09-09
  • SQLite3 安裝、基本操作使用示例

    SQLite3 安裝、基本操作使用示例

    本文介紹了SQLite3的安裝方法(含可選工具包和圖形界面)及基本操作,包括數據庫創(chuàng)建、表結構定義、數據增刪改查和刪除數據庫文件的技巧,同時概述了其輕量、嵌入式、跨平臺、ACID事務等核心特性,感興趣的朋友跟隨小編一起看看吧
    2025-06-06

最新評論