---
# System prepended metadata

title: SQLite使用紀錄
tags: [SQL]

---

# SQLite使用紀錄
> [color=#40f1ef][name=LHB阿好伯, 2020/04/26][:earth_africa:](https://www.facebook.com/LHB0222/)
###### tags: `SQL`

[TOC]

# 為何使用SQLite?
以下是爲什麼SQLite比其他輕量級數據庫受歡迎的功能列表：

SQLite是完全免費的：SQLite是開源的。 因此，不需要許可證就可以自由地使用它。
SQLite是無服務器的：SQLite不需要服務器進程或系統來操作。
SQLite非常靈活：它可以在同一個會話上同時處理多個數據庫。
SQLite不需要配置：SQLite無需設置或管理。
SQLite是一個跨平臺的數據庫系統：除了在大多數平臺，如Windows，Mac OS，Linux和Unix。 它也可以用於許多嵌入式操作系統，如Symbian,Android和Windows CE上使用。
存儲數據很容易：SQLite提供了一種有效的數據存儲方式。

# 下載與安裝
## 資料下載
在SQLite的官方網站，下載頁面Precompiled Binaries for Windows的三個檔案
放置於一個檔案中
例如這次我在C槽建立一個SQLite的資料夾
並將資料解壓縮
![](https://i.imgur.com/ZBCR4j2.png)

## 更改環境變數
![](https://i.imgur.com/52RgHk6.png)
![](https://i.imgur.com/7kcfANZ.png)

將**sqlite-tools-win32-x86-3310100**資料夾中**sqlite3.exe**檔案放置於C:\SQLite資料夾中
# 執行
開啟命令提示字元
輸入`cd C:\SQLite`
![](https://i.imgur.com/54Qjkyl.png)

建立一個範例資料`sqlite3 demo.db`
![](https://i.imgur.com/JddqCKE.png)

.database 檢視資料庫
.open 連結資料庫
.tables 檢視資料庫中的表格
.header on 檢視表格時顯示變數名稱
.mode column 檢視表格時比較漂亮
.shell cls 清空 SQLite 命令列
.exit 離開 SQLite 命令列

## 讀取CSV檔
使用 .import 指令匯入 .csv 檔案建立表格
```sql=
.mode csv
.import nba_teams.csv nba_teams
```



## 重要的SQLite 點命令的列表.help
開啟sqlite3.exe,自動調出Windows命令列視窗
![](https://i.imgur.com/hr9ehj2.png)
當SQLite命令列提示符出現時，輸入.help，將出現一列類似相關命令的說明
輸入.exit後退出程式
![](https://i.imgur.com/uUkwCjG.png)
| 命令 | 描述 |
|---|---|
| .backup ?DB? FILE | 备份 DB 数据库（默认是 "main"）到 FILE 文件。 |
| .bail ON|OFF | 发生错误后停止。默认为 OFF。 |
| .databases | 列出数据库的名称及其所依附的文件。 |
| .dump ?TABLE? | 以 SQL 文本格式转储数据库。如果指定了 TABLE 表，则只转储匹配 LIKE 模式的 TABLE 表。 |
| .echo ON|OFF | 开启或关闭 echo 命令。 |
| .exit | 退出 SQLite 提示符。 |
| .explain ON|OFF | 开启或关闭适合于 EXPLAIN 的输出模式。如果没有带参数，则为 EXPLAIN on，即开启 EXPLAIN。 |
| .header(s) ON|OFF | 开启或关闭头部显示。 |
| .help | 显示消息。 |
| .import FILE TABLE | 导入来自 FILE 文件的数据到 TABLE 表中。 |
| .indices ?TABLE? | 显示所有索引的名称。如果指定了 TABLE 表，则只显示匹配 LIKE 模式的 TABLE 表的索引。 |
| .load FILE ?ENTRY? | 加载一个扩展库。 |
| .log FILE|off | 开启或关闭日志。FILE 文件可以是 |
| .mode MODE | 设置输出模式，MODE 可以是下列之一： **csv** 逗号分隔的值, **column** 左对齐的列, **html HTML** 的 ` <table> ` 代码, **insert** TABLE 表的 SQL 插入（insert）语句, **line** 每行一个值, **list** 由 .separator 字符串分隔的值, **tabs** 由 Tab 分隔的值, tcl TCL 列表元素|
| .nullvalue STRING | 在 NULL 值的地方输出 STRING 字符串。 |
| .output FILENAME | 发送输出到 FILENAME 文件。 |
| .output stdout | 发送输出到屏幕。 |
| .print STRING... | 逐字地输出 STRING 字符串。 |
| .prompt MAIN CONTINUE | 替换标准提示符。 |
| .quit | 退出 SQLite 提示符。 |
| .read FILENAME | 执行 FILENAME 文件中的 SQL。 |
| .schema ?TABLE? | 显示 CREATE 语句。如果指定了 TABLE 表，则只显示匹配 LIKE 模式的 TABLE 表。 |
| .separator STRING | 改变输出模式和 .import 所使用的分隔符。 |
| .show | 显示各种设置的当前值。 |
| .stats ON|OFF | 开启或关闭统计。 |
| .tables ?PATTERN? | 列出匹配 LIKE 模式的表的名称。 |
| .timeout MS | 尝试打开锁定的表 MS 毫秒。 |
| .width NUM NUM | 为 "column" 模式设置列宽度。 |
| .timer ON|OFF | 开启或关闭 CPU 定时器。 |

## SQLite命令提示符的默認設置.show
.show命令，來查看SQLite命令提示符的默認設置
![](https://i.imgur.com/ibhUpxo.png)

### 格式化輸出
```sql=
.header on
.mode column
.timer on

```
# SQLite數據庫瀏覽器_**DB4S**
建議安裝DB Browser for SQLite
可以更方便的操作SQLite
![](https://i.imgur.com/OimFkGs.png)

https://sqlitebrowser.org/
* 創建並壓縮數據庫文件
* 創建，定義，修改和刪除表
* 創建，定義和刪除索引
* 瀏覽，編輯，添加和刪除記錄
* 搜索記錄
* 以文本形式導入和導出記錄
* 從CSV文件導入和導出表格
* 從/到SQL轉儲文件導入和導出數據庫
* 發出SQL查詢並檢查結果
* 檢查應用程序發出的所有SQL命令的日誌
* 根據表或查詢數據繪製簡單圖形

# 參考資料
>https://www.1ju.org/sqlite/features

全文分享至

https://www.facebook.com/LHB0222/

有疑問想討論的都歡迎於下方留言

喜歡的幫我分享給所有的朋友 \o/

有所錯誤歡迎指教

![](https://i.imgur.com/47HlvGH.png)

