<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

玩轉SQLite2:SQLite命令行基本操作

碼農愛學習 ? 來源:碼農愛學習 ? 作者:碼農愛學習 ? 2022-09-23 08:59 ? 次閱讀

本篇介紹SQLite的命令行基本操作

1 SQLite 點命令

SQLite 的點命令,是一些以點為開頭的命令:

poYBAGMsbueAfGI3AAIrLKXAj7U589.png

完整的點指令如下:

.archive ... Manage SQL archives

.auth ON|OFF Show authorizer callbacks

.backup ?DB? FILE 備份DB數據庫(默認是 "main")到 FILE 文件

.bail on|off 發生錯誤后停止,默認為 OFF

.binary on|off Turn binary output on or off. Default OFF

.cd DIRECTORY Change the working directory to DIRECTORY

.changes on|off Show number of rows changed by SQL

.check GLOB Fail if output since .testcase does not match

.clone NEWDB Clone data into NEWDB from the existing database

.connection [close] [#] Open or close an auxiliary database connection

.databases 列出數據庫的名稱及其所依附的文件

.dbconfig ?op? ?val? List or change sqlite3_db_config() options

.dbinfo ?DB? Show status information about the database

.dump ?OBJECTS? 以 SQL 文本格式轉儲數據庫

.echo on|off 開啟或關閉 echo 命令

.eqp on|off|full|... Enable or disable automatic EXPLAIN QUERY PLAN

.excel Display the output of next command in spreadsheet

.exit ?CODE? 以CODE碼退出SQLite提示符

.expert EXPERIMENTAL. Suggest indexes for queries

.explain ?on|off|auto? 開啟或關閉適合于 EXPLAIN 的輸出模式,默認是:auto

.filectrl CMD ... Run various sqlite3_file_control() operations

.fullschema ?--indent? Show schema and the content of sqlite_stat tables

.headers on|off 開啟或關閉頭部顯示

.help ?-all? ?PATTERN? 顯示幫助

.import FILE TABLE 導入來自 FILE 文件的數據到 TABLE 表中

.imposter INDEX TABLE Create imposter table TABLE on index INDEX

.indexes ?TABLE? 顯示所有索引的名稱

.limit ?LIMIT? ?VAL? Display or change the value of an SQLITE_LIMIT

.lint OPTIONS Report potential schema issues.

.load FILE ?ENTRY? 加載一個擴展庫

.log FILE|off 開啟或關閉日志,可以是stderr或stdout

.mode MODE ?TABLE? 設置輸出模式

.nonce STRING Disable safe mode for one command if the nonce matches

.nullvalue STRING 在 NULL 值的地方輸出 STRING 字符串

.once ?OPTIONS? ?FILE? Output for the next SQL command only to FILE

.open ?OPTIONS? ?FILE? 關閉存在的數據庫或重新打開文件

.output ?FILE? Send output to FILE or stdout if FILE is omitted

.parameter CMD ... Manage SQL parameter bindings

.print STRING... 逐字地輸出 STRING 字符串

.progress N Invoke progress handler after every N opcodes

.prompt MAIN CONTINUE 替換標準提示符

.quit 退出 SQLite 提示符

.read FILE Read input from FILE

.recover Recover as much data as possible from corrupt db.

.restore ?DB? FILE Restore content of DB (default "main") from FILE

.save FILE Write in-memory database into FILE

.scanstats on|off Turn sqlite3_stmt_scanstatus() metrics on or off

.schema ?PATTERN? Show the CREATE statements matching PATTERN

.selftest ?OPTIONS? Run tests defined in the SELFTEST table

.separator COL ?ROW? Change the column and row separators

.session ?NAME? CMD ... Create or control sessions

.sha3sum ... Compute a SHA3 hash of database content

.shell CMD ARGS... Run CMD ARGS... in a system shell

.show 顯示各種設置的當前值

.stats ?ARG? 開啟或關閉統計

.system CMD ARGS... Run CMD ARGS... in a system shell

.tables ?TABLE? List names of tables matching LIKE pattern TABLE

.testcase NAME Begin redirecting output to 'testcase-out.txt'

.testctrl CMD ... Run various sqlite3_test_control() operations

.timeout MS 嘗試打開鎖定的表 MS 毫秒

.timer on|off 開啟或關閉SQL定時器

.trace ?OPTIONS? Output each SQL statement as it is run

.vfsinfo ?AUX? Information about the top-level VFS

.vfslist List all available VFSes

.vfsname ?AUX? Print the name of the VFS stack

.width NUM1 NUM2 ... Set minimum column widths for columnar output

例如,使用.show指令可以查看當前的各種設置:

pYYBAGMsbvGAK6imAAAxSU2f5ME884.png

2 SQLite 創建數據庫

使用sqlite3 命令來創建數據庫有兩種方式

2.1 方式1:sqlite3+數據庫名

例如,使用sqlite3 test1.db創建test1數據庫,然后使用.databases查看數據庫

.

poYBAGMsbviAIeIgAABiYcHH3Ho882.png

2.2 方式2:使用.open命令

例如,使用.open test2.db創建test2數據庫

poYBAGMsbv6AZfSJAABhlCY3aX8690.png

2.3 將數據庫導出到文件

使用 .dump 點命令導出數據庫到文本文件中

sqlite3 test1.db .dump > test1.sql

也可以從生成的 testDB.sql 恢復:

sqlite3 test1.db < test1.sql
pYYBAGMsbyiAdY3JAAAy_vvnTiY034.png

3 SQLite 創建表

可以通過CREATE TABLE語句來創建表,其基本語法為:

CREATE TABLE database_name.table_name(
   column1 datatype  PRIMARY KEY(one or more columns),
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

例如,創建一個 COMPANY 表,ID 作為主鍵,NOT NULL 的約束表示在表中創建紀錄時這些字段不能為 NULL:

sqlite> CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

然后可以使用.tables命令來驗證表是否已成功創建

sqlite>.tables
COMPANY 
pYYBAGMsb2CAOvxGAABsk4EiT0c312.png

也可以使用.schema命令得到表的完整信息

sqlite>.schema COMPANY
CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);
poYBAGMsb3eANYojAAAneeXS5kA293.png

最后將數據庫導出到.sql文件查看:

pYYBAGMsb32AaW7bAABxU99NE7c014.png

end

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • SQlite
    +關注

    關注

    0

    文章

    78

    瀏覽量

    15783
  • 命令行
    +關注

    關注

    0

    文章

    75

    瀏覽量

    10354
收藏 人收藏

    評論

    相關推薦

    玩轉SQLite3:SQLite圖形軟件基本操作

    上篇文章:,介紹了sqlite3命令行操作來創建數據庫與表,該方法需要有一定的數據庫基礎知識。
    的頭像 發表于 09-25 08:49 ?2256次閱讀
    <b class='flag-5'>玩轉</b><b class='flag-5'>SQLite</b>3:<b class='flag-5'>SQLite</b>圖形軟件基本<b class='flag-5'>操作</b>

    玩轉SQLite4:SQLite數據插入與查看

    本篇介紹了數據庫中數據的插入(使用圖形界面和命令行操作兩種方式),命令行中數據顯示格式的配置修改,以及SQLite的兩個基本語句(select語句和insert語句)。
    的頭像 發表于 09-25 08:50 ?3123次閱讀
    <b class='flag-5'>玩轉</b><b class='flag-5'>SQLite</b>4:<b class='flag-5'>SQLite</b>數據插入與查看

    玩轉SQLite8:運算符與表達式

    本篇介紹了SQLite的基礎運算符與表達式,并通過命令行的方式執行sql語句進行測試驗證,在實際開發中,可使用C/C++ API函數來使用。
    的頭像 發表于 09-27 08:56 ?2128次閱讀
    <b class='flag-5'>玩轉</b><b class='flag-5'>SQLite</b>8:運算符與表達式

    在STM32實現命令行

    工作中的開發環境都是基于linux命令行交互,作為命令行的重度使用者,玩單片機也要使用命令行工具,百度了一些命令行工具,有幾個不錯的開源 cmd 交互工具,主要看了 finsh
    發表于 12-09 11:32 ?1670次閱讀

    Linux sqlite3的基本命令操作

    sqlite3一款主要用于嵌入式的輕量級數據庫,本文旨在為熟悉sqlite3基本命令提供技術文檔。
    發表于 07-16 06:29

    Sqlite移動嵌入式數據庫Sqlite的日常SQL操作語句是什么?

    Sqlite移動嵌入式數據庫Sqlite的日常SQL操作語句是什么?
    發表于 12-27 07:37

    caxa命令行中的應用

    caxa命令行中的應用 命令行對于大多用戶來說往往只是輸入數據的作用,但是其中的奧妙還有很多,下面就給大家
    發表于 10-18 18:18 ?2172次閱讀

    博達環網配置命令行

    博達工業交換要環網配置命令行
    發表于 12-27 16:24 ?0次下載

    CMD的命令行高級教程

    CMD的命令行高級教程
    發表于 10-24 08:31 ?30次下載
    CMD的<b class='flag-5'>命令行</b>高級教程

    維基鏈的命令行是如何高效快速的對維基鏈節點進行操作

    的,WaykiChain也為開發者提供了相應的工具,開發者通過此命令行工具可以高效快速的對維基鏈節點進行操作。在維基鏈中,此命令行工具被稱為coind。
    發表于 06-24 11:15 ?884次閱讀

    Golang基于flag庫實現一個命令行工具

    Golang 標準庫中的 flag 庫提供了解析命令行選項的能力,我們可以基于此來開發命令行工具。
    的頭像 發表于 10-28 09:26 ?997次閱讀

    如何創建一個Sqlite數據庫?

    如何創建一個Sqlite數據庫? Sqlite是一種輕量級、占用空間小、操作速度快的嵌入式數據庫,使用它可以方便地存儲和管理數據。Sqlite是免費和開源的軟件,使得它成為一個流行的選
    的頭像 發表于 08-28 16:40 ?3907次閱讀

    創建SQlite的方法

    創建SQlite的方法 SQLite是一種輕量級的嵌入式關系型數據庫,它可以適用于各種不同的平臺和操作系統。SQLite的使用非常廣泛,特別是當無需配置大型數據庫服務器,僅需要一個本地
    的頭像 發表于 08-28 17:15 ?3229次閱讀

    linux虛擬機怎么調出命令行

    在Linux虛擬機中調出命令行界面,可以通過以下步驟實現: 打開虛擬機,進入到Linux系統。 在桌面或應用菜單中找到終端或命令行圖標,點擊打開。 輸入命令行指令,執行相應的操作。 另
    的頭像 發表于 11-08 11:28 ?1761次閱讀

    idea如何輸入命令行參數

    在許多軟件開發和系統管理的任務中,我們經常需要向應用程序傳遞命令行參數。命令行參數是在運行時傳遞給程序的值,用于指定程序的行為和配置選項。本文將詳細介紹如何在不同的編程語言和操作系統中輸入命令
    的頭像 發表于 12-06 15:01 ?425次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>