系統平台:ubuntu10.04
簡介sqlite3一款主要用於嵌入式的輕量級資料庫,本文旨在為熟悉sqlite3基本命令提供技術文件。
備註:本文所有操作均在root
使用者下進行。
1、安裝
sqlite3
ubuntu下安裝
sqlite3
直接在終端執行命令:
#apt-get install sqlite3
檢視版本資訊:
#sqlite3 -version
2
、sqlite3
常用命令
當前目錄下建立或開啟test.db
資料庫檔案,並進入
sqlite
命令終端,以
sqlite>
字首標識:
#sqlite3 test.db
檢視資料庫檔案資訊命令(
注意命令前帶字元
'.')
:sqlite>.database
檢視所有表的建立語句:
sqlite>.schema
檢視指定表的建立語句:
sqlite>.schema table_name
以sql
語句的形式列出表內容:
sqlite>.dump table_name
設定顯示資訊的分隔符:
sqlite>.separator symble
example:設定顯示資訊以『:』分隔
sqlite>.separator :
設定顯示模式:
sqlite>.mode mode_name
example:預設為
list
,設定為
column
,其他模式可通過
.help
檢視mode
sqlite>.mode column
輸出幫助資訊:
sqlite>.help
設定每一列的顯示寬度:
sqlite>.width width_value
example:設定寬度為
2sqlite>.width 2
列出當前顯示格式的配置:
sqlite>.show
退出sqlite
終端命令:
sqlite>.quit
或sqlite>.exit
3、
sqlite3
指令
sql的指令格式:所有
sql指令都是以分號
(;)結尾,兩個減號
(--)
則表示注釋。
如:sqlite>create studen_table(stu_no interger primary key, name text not null, id interger unique, age interger check(age>6), school text default 'xx小學
);該語句建立乙個記錄學生資訊的資料表。
3.1 sqlite3儲存資料的型別
null:標識乙個
null
值interger:整數型別
real:浮點數
text:字串
blob:二進位制數
3.2 sqlite3儲存資料的約束條件
sqlite常用約束條件如下:
primary key -
主鍵:1)主鍵的值必須唯一,用於標識每一條記錄,如學生的學號
2)主鍵同時也是乙個索引,通過主鍵查詢記錄速度較快
3)主鍵如果是整數型別,該列的值可以自動增長
not null -
非空:約束列記錄不能為空,否則報錯
unique -
唯一:除主鍵外,約束其他列的資料的值唯一
check -
條件檢查:
約束該列的值必須符合條件才可存入
default -
預設值:
列資料中的值基本都是一樣的,這樣的字段列可設為預設值
3.3 sqlite3常用指令
1)建立資料表
create table table_name(field1 type1, field2 type1, ...);
table_name是要建立資料表名稱,
fieldx
是資料表內欄位名稱,
typex
則是字段型別。
例,建立乙個簡單的學生資訊表,它包含學號與姓名等學生資訊:
create table student_info(stu_no interger primary key, name text);
2)新增資料記錄
insert into table_name(field1, field2, ...) values(val1, val2, ...);
valx為需要存入欄位的值。
例,往學生資訊表新增資料:
insert into student_info(stu_no, name) values(0001, alex);
3)修改資料記錄
update table_name set field1=val1, field2=val2 where expression;
where是
sql語句中用於條件判斷的命令,
expression
為判斷表示式
例,修改學生資訊表學號為0001
的資料記錄:
update student_info set stu_no=0001, name=hence where stu_no=0001;
4)刪除資料記錄
delete from table_name [where expression];
不加判斷條件則清空表所有資料記錄。
例,刪除學生資訊表學號為0001
的資料記錄:
delete from student_info where stu_no=0001;
5)查詢資料記錄
select指令基本格式:
select columns from table_name [where expression];
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;
select * from table_name where field in ('val1', 'val2', 'val3');
select * from table_name where field between val1 and val2;
f查詢記錄數目
select count (*) from table_name;
g區分列資料
select distinct field from table_name;
有一些欄位的值可能會重複出現,distinct
去掉重複項,將列中各字段值單個列出。
6)建立索引
當說資料表存在大量記錄,索引有助於加快查詢資料表速度。
create index index_name on table_name(field);
例,針對學生表stu_no
字段,建立乙個索引:
create index student_index on student_table(stu_no);
建立完成後,sqlite3
在對該字段查詢時,會自動使用該索引。
7)刪除資料表或索引
drop table table_name;
drop index index_name;
Linux Sqlite3 基礎知識
1.檢視所有表 tables 2.檢視所有表建立語句 schema 3.檢視指定表建立語句 schema table name1 安裝sqlite3 ubuntu下安裝sqlite3直接在終端執行命令 apt get install sqlite3 檢視版本資訊 sqlite3 version 2 ...
linux sqlite3怎麼通過命令列退出
help可列印出幫助文件 quit就可以退出sqlite3,回來shell介面 嵌入式資料庫sqlite移植到s3c2410的方法 以下是本人的工作目錄,可根據自己的情況進行調整。1 交叉編譯環境建立 用於交叉編譯sqlite 安裝cross 2.95.3.tar.bz2交叉編譯工具到 usr lo...
Linux基本命令練習(3)
參考實驗樓課程linux 命令例項練習 which 命令的作用是,在 path 變數指定的路徑中搜尋可執行檔案的所在位置。它一般用來確認系統中是否安裝了指定的軟體。which 可執行檔名稱 which gcc 確認是否安裝了 gcc返回 gcc安裝路徑 echo shell 命令檢視當前使用的 sh...