Sqlite3基本語句及安裝過程
SQLite3簡介
SQLite3是一款輕量級的、基于文件的開源關系型數(shù)據(jù)庫引擎,由 D. Richard Hipp 于 2000 年首次發(fā)布。它遵循 SQL 標準,但與傳統(tǒng)的數(shù)據(jù)庫系統(tǒng)不同,SQLite 并不運行在獨立的服務器進程中,而是作為一個嵌入式數(shù)據(jù)庫引擎直接集成到應用程序中。其所有的數(shù)據(jù)結(jié)構(gòu)(包括表、索引、事務日志等)都保存在一個單一的 .db 文件中。
SQLite 的設計理念是“零配置、開箱即用”,開發(fā)者只需將其動態(tài)庫鏈接進應用程序,就可以直接進行數(shù)據(jù)庫操作,無需安裝數(shù)據(jù)庫服務或進行網(wǎng)絡配置。
SQLite3 是 SQLite 的第三個主要版本,相較前代有更強的兼容性和更完整的 SQL 支持,是目前最常用的版本。
sqlite3安裝
ubunto下安裝
sudo apt install sqlite3
sqlite命令
首先在中斷輸入sqlite3,獲取命令清單時使用**.help**,紅框中為部分sqlite命令

常用命令
1、 .exit:退出sqlite,.quit也可以退出
2、.headers ON|OFF:開啟或關閉頭部顯示
3、.help:顯示消息
4、.show:顯示各種設置信息
5、.tables:顯示數(shù)據(jù)庫中存在的表
6、.schema 表名:顯示創(chuàng)建表時的語句
sqlite語句
以任何關鍵字開始,以**;**結(jié)束。關鍵字不區(qū)分大小寫
常用關鍵字
- SELECT
 - INSERT
 - UPDATA
 - DELETE
 - DROP
 
創(chuàng)建數(shù)據(jù)庫
創(chuàng)建數(shù)據(jù)庫語法:
sqlite3 DatabaseName.db
執(zhí)行完該語句后,成功創(chuàng)建數(shù)據(jù)庫文件后,會提供一個sqlite>提示符,此時還需要執(zhí)行下面命令,如果不執(zhí)行在退出sqlite后,用 ls 查看是沒有數(shù)據(jù)庫文件的
.databases

紅框為沒有執(zhí)行.databases,查看是 沒有test_db.db這個文件的
創(chuàng)建表
創(chuàng)建數(shù)據(jù)庫表需要使用CREATE關鍵字,還需要定義表中的列,以及列的數(shù)據(jù)類型 可以選擇是否需要約束
數(shù)據(jù)類型
| 存儲類 | 描述 | 
|---|---|
| NULL | 值是一個NULL值 | 
| INTEGER | 帶符號整數(shù) | 
| REAL | 浮點值 | 
| TEXT | 文本字符串,使用UTF-8,UTF-16BE, UTF-16LE存儲 | 
| BLOB | blol數(shù)據(jù),完全根據(jù)他的輸入存儲 | 
約束
- NOT NULL:確保某列不能有空值(常用)
 - DEFAULT:當某列沒有值時,提供默認值
 - UNIQUE:確保某列中的所有值不同
 - PRIMARY KEY:唯一標識數(shù)據(jù)庫表中的各行記錄(常用)
 - CHECK:確保某列中的所有值滿足一定條件
 
PRIMARY KEY 約束唯一標識數(shù)據(jù)庫表中的每個記錄。在一個表中可以有多個 UNIQUE 列,但只能有一個主鍵。在設計數(shù)據(jù)庫表時,主鍵是很重要的。主鍵是唯一的 ID。
創(chuàng)建語句
CREATE TABLE TableName ( column1 datatype PRIMARY KEY, column2 datatype, column3 datatype, ...... columnN datatype, );
括號內(nèi)的內(nèi)容可以理解為:列名稱 列的數(shù)據(jù)類型 和約束條件
例如:創(chuàng)建一個名為人員信息的表,存儲姓名、年齡、性別、住址和聯(lián)系方式,可以使用如下方式創(chuàng)建
CREATE TABLE perpolinfo( id INTEGER PRIMARY KEY autoincrement NOT NULL, name TEXT NOT NULL, age INT NOT NULL, sex TEXT NOT NULL, address TEXT NOT NULL, phone TEXT NOT NULL, );
INTEGER:表示數(shù)據(jù)類型是整形
PRIMARY KEY:表示id的數(shù)值唯一,不能出現(xiàn)重復值
autoincrement:表示id自增長,因此在寫入數(shù)據(jù)時可以不寫入id值
NOT NULL:表示這一列不能有空值出現(xiàn),
刪除表
DROP TABLE tablename
添加數(shù)據(jù):
方式1:
INSERT INTO tablename (column1, column2, column3,...columnN) VALUES(value1, value2, value3,...valueN);
values中的值要與表的列對應
方式2:
INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
獲取數(shù)據(jù)
獲取全部數(shù)據(jù)
SELECT * FROM tablename;
獲取某幾列數(shù)據(jù)
SELECT column1, column2, columnN FROM table_name;
有選擇的獲取某些數(shù)據(jù)
使用where設置條件
SELECT column1, column2, columnN FROM table_name WHERE [condition]
where語句中的條件可以使用比較邏輯運算符
比較運算符
運算符 描述 == 檢查兩個操作數(shù)是否相等 = 等于 != 不等于 > 大于 < 小于 >= 大于等于 <= 小于等于 !< 不小于 !> 不大于 邏輯運算符
運算符 描述 AND 與 OR 或 EXISTS 在滿足一定條件的指定表中搜索行的存在 IN 把某個值與一系列指定列表的值進行比較,例如where id in (20,27)表示篩選id在20到27范圍內(nèi)的數(shù)據(jù) NOT IN IN 運算符的對立面 LIKE 把某個值與使用通配符運算符的相似值進行比較 NOT NOT 運算符是所用的邏輯運算符的對立面。比如 NOT EXISTS、NOT BETWEEN、NOT IN,等等 IS NULL NULL 運算符用于把某個值與 NULL 值進行比較 IS IS 運算符與 = 相似 IS NOT IS NOT 運算符與 != 相似 UNIQUE UNIQUE 運算符搜索指定表中的每一行,確保唯一性 
有多個篩選條件時可以使用and或or
SELECT column1, column2, columnN FROM table_name WHERE [condition1] AND [condition2]...AND [conditionN];
where語句
上面提到的where可以用來篩選數(shù)據(jù),所以where不僅可以與select聯(lián)合使用,也可以與updata、delete語句聯(lián)合使用
與AND一起使用
SELECT column1, column2, columnN FROM table_name WHERE [condition1] AND [condition2]...AND [conditionN];
AND鏈接的是多個篩選條件,有與的意思
與OR一起使用
SELECT column1, column2, columnN FROM table_name WHERE [condition1] OR [condition2]...OR [conditionN]
OR 有或的意思
與like一起使用
LIKE 運算符是用來匹配通配符指定模式的文本值,這里有兩個通配符與 LIKE 運算符一起使用:
- 百分號 %,代表零個、一個或多個數(shù)字或字符。
 - 下劃線 _,代表一個單一的數(shù)字或字符。
 
這些符號可以被組合使用
語法
SELECT column_list FROM table_nameWHERE column LIKE 'XXXX%' xxxx表示任意字符串
與IN一起使用
SELECT column1, column2....columnN FROM table_name WHERE column_name IN (val-1, val-2,...val-N);
更新數(shù)據(jù)
可以使用帶有 WHERE 子句的 UPDATE 查詢來更新選定行,否則所有的行都會被更新。
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE [condition];
刪除數(shù)據(jù)
可以使用帶有 WHERE 子句的 DELETE 查詢來刪除選定行,否則所有的記錄都會被刪除。
DELETE FROM table_name WHERE [condition];
統(tǒng)計個數(shù)
SELECT COUNT(column_name) FROM table_name WHERE CONDITION;
到此這篇關于Sqlite3基本語句的文章就介紹到這了,更多相關sqlite3基本語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
 Sqlite數(shù)據(jù)庫里插入數(shù)據(jù)的條數(shù)上限是500
sqlite每次只能插入的數(shù)據(jù)不能超過500條數(shù)據(jù),大家在使用的時候需要注意一下。2015-04-04
 SQLite數(shù)據(jù)庫常用語句及MAC上的SQLite可視化工具MeasSQLlite使用方法
這篇文章主要介紹了SQLite數(shù)據(jù)庫常用語句及MAC上的SQLite可視化工具MeasSQLlite使用方法,需要的朋友可以參考下2016-01-01

