sqlite常用的命令-增刪改查
一、檢視版本資訊:
#sqlite3 -version
二、sqlite3常用命令
1、當前目錄下建立或開啟test.db資料庫檔案,並進入sqlite命令終端,以sqlite>字首標識:
2、輸出幫助資訊:
sqlite>.help
3、檢視資料庫檔案資訊命令(注意命令前帶字元'.'):
sqlite>.database
4、退出sqlite終端命令:
sqlite>.quit
或
sqlite>.exit
列出當前顯示格式的配置:
sqlite>.show
6、顯示資料庫結構:.schema
顯示錶的結構:.schema 表名
其實就是一些 SQL
7、匯出某個表的資料: .dump 表名
8、設定匯出目標:
.output 檔名
或者
.output stdout
先執行 .output cars.sql ,然後再執行 .dump 命令試試看?如果要回覆成匯出到終端(標準輸出),則執行 .output stdout
10、設定分隔符:.separator 分隔符
我們可以首先執行 SELECT * FROM Cars; ,可以看到預設的分隔符是 |
執行.separator : 以後,再 SELECT * FROM Cars;,可以看到分隔符已經變成 : 了
11、
12、設定顯示模式:.mode 模式
有好幾種顯示模式,預設的是 list 顯示模式,一般我們使用 column 顯示模式,還有其他幾種顯示模式可以 .help 看 mode 相關內容。看看下面的圖,和上面是不是顯示的不一樣了?
13、設定 NULL 值顯示成什麼樣子: .nullvalue 你想要的NULL值格式
預設情況下NULL值什麼也不顯示,你可以設定成你自己想要的樣子
14、配置檔案 .sqliterc
如果我們每次進入命令列都要重新設定顯示格式,很麻煩,其實 .show 命令列出的所有設定項都可以儲存到一個 .sqliterc
三、資料庫和表的相關命令
1、建立一個新的資料庫:sqlite3 檔名
建立一個 test.db 資料庫檔案,開啟控制檯視窗,命令如下:
sqlite>sqlite3 test.db
2、開啟一個已經存在的資料庫:sqlite3 已經存在的檔名
建立一個新資料庫和開啟一個已經存在的資料庫命令是一模一樣的,如果檔案在當前目錄下不存在,則新建;如果存在,則開啟。
3、建立資料表
create table table_name(field1 type1, field2 type1, ...);
table_name是要建立資料表名稱,fieldx是資料表內欄位名稱,typex則是欄位型別。
如:該語句建立一個記錄學生資訊的資料表。
sql的指令格式:所有sql指令都是以分號(;)結尾,兩個減號(--)則表示註釋。
4、新增資料記錄
insert into table_name(列field1, field2, ...) values(值val1, val2, ...);
valx為需要存入欄位的值。
例,往老師資訊表新增資料:
很簡單,建立了一個 Teachers 表並向其中添加了四條資料,設定了一些約束,其中有自動增加的主鍵、預設值等等。
5、修改資料
UPDATE 表 SET 列 = '新值' 【WHERE 條件語句】
UPDATE 語句用來更新表中的某個列,如果不設定條件,則所有記錄的這一列都被更新; 如果設定了條件,則符合條件的記錄的這一列被更新, WHERE 子句被用來設定條件,如下例:
6、刪除資料 DELETE FROM 表 【WHERE 條件語句】
如果設定 WHERE 條件子句,則刪除符合條件的資料記錄;如果沒有設定條件語句,則刪除所有記錄
7、匯入資料:.read 資料檔案
開啟記事本,並將下列 SQL 語句複製到記事本中,儲存為 test.sql ,在命令列環境中輸入
.read test.sql
即將所有的資料匯入到 test.db 資料庫中。
BEGIN TRANSACTION;
CREATE TABLE Cars(Id integer PRIMARY KEY, Name text, Cost integer);
INSERT INTO Cars VALUES(1,'Audi',52642);
INSERT INTO Cars VALUES(2,'Mercedes',57127);
INSERT INTO Cars VALUES(3,'Skoda',9000);
INSERT INTO Cars VALUES(4,'Volvo',29000);
INSERT INTO Cars VALUES(5,'Bentley',350000);
INSERT INTO Cars VALUES(6,'Citroen',21000);
INSERT INTO Cars VALUES(7,'Hummer',41400);
INSERT INTO Cars VALUES(8,'Volkswagen',21600);
COMMIT;
BEGIN TRANSACTION;
CREATE TABLE Orders(Id integer PRIMARY KEY, OrderPrice integer CHECK(OrderPrice>0),
Customer text);
INSERT INTO Orders(OrderPrice, Customer) VALUES(1200, "Williamson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(200, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(40, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(1640, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(100, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(50, "Williamson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(150, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(250, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(840, "Brown");
INSERT INTO Orders(OrderPrice, Customer) VALUES(440, "Black");
INSERT INTO Orders(OrderPrice, Customer) VALUES(20, "Brown");
COMMIT;
8、查詢資料記錄
a查詢輸出所有資料記錄
select * from table_name;
b限制輸出資料記錄數量
若資料庫中的資料太多,全部返回可不行,可以限制返回的數量,還可以設定返回的起始位置
select * from table_name limit val;
c升序輸出資料記錄
select * from table_name order by field asc;
d降序輸出資料記錄
select * from table_name order by field desc;
e條件查詢
select * from table_name where expression;
IN (集合)
select * from table_name where field in ('val1', 'val2', 'val3');
BETWEEN 值1 AND 值2
select * from table_name where field between val1 and val2;
f、查詢記錄數目
select count (*) from table_name;
g、區分列資料
select distinct field from table_name;
有一些欄位的值可能會重複出現,distinct去掉重複項,將列中各欄位值單個列出。
h、別名 SELECT 列 AS 別名,列 AS 別名 FROM
可以給返回資料集中的某些列起一個比較直觀的名字,比如把 Cost 改為"Price Of Car"
I、條件查詢 SELECT 列 FROM 表 【WHERE 條件語句】
一般的條件語句都是大於、小於、等於之類的,這裡有幾個特別的條件語句
LIKE
------------------------------
LIKE 用萬用字元匹配字串
下劃線 _ 匹配一個字串
百分號 % 匹配多個字串
LIKE 匹配字串時不區分大小寫
GLOB
J 區分 DISTINCT 列
有一些欄位的值可能會出現重複,比如訂單表中,一個客戶可能會有好幾份訂單,因此客戶的名字會重複出現。
到底有哪些客戶下了訂單呢?下面的語句將客戶名字區分出來。
k分組 GROUP BY 列
分組和前面的區分有一點類似。區分僅僅是為了去掉重複項,而分組是為了對各類不同項進行統計計算。
比如上面的例子,我們區分出 5 個客戶,這 5 個客戶一共下了 11 個訂單,說明很多客戶都下了不止一個訂單。
下面的語句統計每個客戶在訂單上總共花費了多少錢。
這裡 Sum 是 SQLite 內建的統計函式,在這個例子中用來求每個顧客的訂單價格的和。
統計結果也可以設定返回條件,但是不能用 WHERE 子句,而是用 HAVING 子句,如下例,返回訂單總額大於 1000 的顧客。
9、建立索引
當說資料表存在大量記錄,索引有助於加快查詢資料錶速度。
create index index_name on table_name(field);
例,針對學生表stu_no欄位,建立一個索引:
create index student_index on student_table(stu_no);
建立完成後,sqlite3在對該欄位查詢時,會自動使用該索引。
10、刪除資料表或索引
drop table table_name;
drop index index_name;
四、sqlite3儲存資料的型別
NULL:標識一個NULL值
INTERGER:整數型別
REAL:浮點數
TEXT:字串
BLOB:二進位制數
五、sqlite3儲存資料的約束條件
Sqlite常用約束條件如下:
PRIMARY KEY - 主鍵:
1)主鍵的值必須唯一,用於標識每一條記錄,如學生的學號
2)主鍵同時也是一個索引,通過主鍵查詢記錄速度較快
3)主鍵如果是整數型別,該列的值可以自動增長
NOT NULL - 非空:
約束列記錄不能為空,否則報錯
UNIQUE - 唯一:
除主鍵外,約束其他列的資料的值唯一
CHECK - 條件檢查:
約束該列的值必須符合條件才可存入
DEFAULT - 預設值:
列資料中的值基本都是一樣的,這樣的欄位列可設為預設值
CREATETABLE Orders(Id integerPRIMARYKEY, OrderPrice integerCHECK(OrderPrice>0),
Customer text);
CREATETABLE Friends(Id integerPRIMARYKEY, Name textUNIQUENOTNULL,
Sex textCHECK(Sex IN ('M', 'F')));
CREATETABLEIFNOTEXISTS Reservations(Id integerPRIMARYKEY,
CustomerId integer, Daytext);
INSERTINTO Reservations(CustomerId, Day) VALUES(1, '2009-22-11');
CREATETABLE Books(Id integerPRIMARYKEY, Title text, Author text,
Isbn textdefault'not available');
ALTER TABLE table-name ADD COLUMN column-name column-type
相關推薦
sqlite常用的命令-增刪改查
一、檢視版本資訊: #sqlite3 -version 二、sqlite3常用命令 1、當前目錄下建立或開啟test.db資料庫檔案,並進入sqlite命令終端,以sqlite>字首標識: 2、輸出幫助資訊: sqlite>.help 3、檢視資料庫檔案資訊命令(注意命令前帶字元'.'):
Thinkphp5的安裝及其常用的增刪改查
blog 時間 clas alt img 學習 thinkphp5 方便 highlight 很長沒有碼代碼了,現在開始做這件事情的意義已經完全與以前不一樣了。因為最近有相當長的一段休息時間,是個學習的好時間啊。之前接觸過TP3.2,聽說後來的版本有挺大的改動,因此呢,現在
安卓使用sql語句實現SQLite資料庫的增刪改查
本篇博文是在上一篇新建了資料庫的基礎上編寫的,上一篇博文連結:https://blog.csdn.net/liyunfu233/article/details/84193368 首先在佈局檔案中新增四個按鍵分別是增刪改查四種方法,在主視窗類中實現四種方法: 第一個點選按鈕增加一條記錄
【sql server常用操作{增刪改查}】
use DB_x go
hbase shell 命令-增刪改查
hbase基礎命令 bin/hbase shell list 看錶 1、檢視伺服器狀態 status 'bigdata' 2、檢視當前有哪些表 list 3、檢視幫助 help hbase表操作 1、建立表 create '表名', '列族' 2、全表掃描
安卓中對SQLite資料庫的增刪改查
第一步:編寫一個java Bean package com.itfom.entity; public class Person { private String name; private int age; private String phone; publi
安卓中sqlite資料庫的增刪改查操作的工具類
<span style="font-family:Microsoft YaHei;font-size:18px;">將資料庫中的增刪改查操作封裝成一個類,使用時直接呼叫很方便 package com.qianfeng.day14_sqliteopenhelpe
常用的增刪改查的實現之dao層
public interface IFoodTypeDao { //增 輸入:一個物件 輸出:無 void add //刪 輸入:id 輸出:無 void delet
Mysql常用命令操作之增刪改查
賬號 建立 批量插入 創建表 tab use 常用命令 default images 1.數據庫操作: 1.1 創建數據庫 : create database <數據庫名> a.建立一個名為oldboy_default的數據
MYSQL的常用命令和增刪改查語句和資料型別
連線命令:mysql -h[主機地址] -u[使用者名稱] -p[使用者密碼] 建立資料庫:create database [庫名] 顯示所有資料庫: show databases; 開啟資料庫:use [庫名] 當前選擇的庫狀態:SELECT DATABASE(); 建立資料表:CRE
MySQL增刪改查常用語句命令
2017/11/01 | 未分類|songjian| 1 條評論| 1818 viewsMySQL關係型資料庫RDS中的老大哥,增刪改查是MySQL入門的基礎,資料庫吧來說說MySQL資料庫增刪改查常用語句。增刪改查語句增刪改查的語句命令為增:insert刪:delete
mysql常用語句、命令(增刪改查功能)
修改資料庫的字符集 mysql>use mydb mysql>alter database mydb character set utf8;建立資料庫指定資料庫的字符集 mysql>create database mydb char
MongoDB學習筆記(二)_常用增刪改查命令
建立資料庫:use testdb 建立集合 固定集合:需要指定size。比如: db.createCollection("mycol",{capped:true,autoIndexId:true,size:6142800,max:10000}) 表示建立名為mycol的
資料庫常用增刪改查命令
1、查詢命令 SELECT 列名稱 FROM 表名稱 SELECT * FROM 表名稱 WHERE 列名稱 LIKE % 2、刪除命令 DELETE FROM 表名稱 WHERE 列名稱 = 值 注意:刪除某條語句要用where語句,不然會刪除整個表格 3、更改
MySQL 常用命令手冊 增刪改查大法
## 一、資料庫操作 ### 建立資料庫 **語法:** ```mysql CREATE DATABASE database_name; ``` ### 刪除資料庫 刪除資料庫務必謹慎!因為執行刪除命令後,所有資料將消失。 **語法:** ```mysql DROP DATABASE data
常用增刪改查sql示例
sql常用查詢一、插入數據 (1)INSERT INTO Persons VALUES (‘Gates‘, ‘Bill‘, ‘Xuanwumen 10‘, ‘Beijing‘) (2)INSERT INTO Persons (LastName, Address) VALUES
SQL常用增刪改查語句
滿足 between 結構 模糊 運算 源表 刪除表 sel 模糊查詢 1增 1.1【插入單行】insert [into] <表名> (列名) values (列值)例:insert into Strdents (姓名,性別,出生日期) values (‘開心朋
SQLite數據庫增刪改查
lda writable switch books ide red ear create val 在安卓開發中不可避免的會遇到在手機中保存數據的時候,如果只是小量數據(如保存設置等)的話,用SharedPreferences是個極好的選擇,它以鍵值對的形式保存數據,但是如果
簡單的增刪改查操作命令
區別 命名 兩個 integer pan 數據庫 add 希望 robert 刪除 DELETE FROM (數據庫的哪一個表)USER WHRER ID=(條件)2; 插入 INSERR INTO (數據庫的哪一個表)USER VALUES(數據); 查找 SEL
Kafka Shell基本命令(包括topic的增刪改查)
pre table kafka tool for del 生產 scribe 風險 本節內容: 創建kafka topic 查看所有topic列表 查看指定topic信息 控制臺向topic生產數據 控制臺消費topic的數據 查看topic某分區偏移量最大(小)值 增加