一般資料採用的固定的待用資料類型,而SQLite採用的是動態資料類型,會根據存入值自動判斷。SQLite具有以下五種數
據類型:
1.NULL:空值。
2.INTEGER:帶符號的整型,具體取決有存入數位範圍大小。
3.REAL:浮點數字,儲存為8-byte IEEE浮點數。
4.TEXT:字串文本。
5.BLOB:二進位對象。
但實際上,sqlite3也接受如下的資料類型:
smallint 16 位元的整數。
interger 32 位元的整數。
decimal(p,s) p 精確值和 s 大小的十進位整數,精確值p是指全部有幾個數(digits)大小值,s是指小數點後有幾位元。
如果沒有特別指定,則系統會設為 p=5; s=0 。
float 32位元的實數。
double 64位元的實數。
char(n) n 長度的字串,n不能超過 254。
varchar(n) 長度不固定且其最大長度為 n 的字串,n不能超過 4000。
graphic(n) 和 char(n) 一樣,不過其單位是兩個字元 double-bytes, n不能超過127。這個形態是為了支援兩個字元長
度的字型,例如中文字。
vargraphic(n) 可變長度且其最大長度為 n 的雙字元字串,n不能超過 2000
date 包含了 年份、月份、日期。
time 包含了 小時、分鐘、秒。
timestamp 包含了 年、月、日、時、分、秒、千分之一秒。
datetime 包含日期時間格式,必須寫成'2010-08-05'不能寫為'2010-8-5',否則在讀取時會產生錯誤!
Sqlite常用資料類型
這句話本身就有問題,因為:SQLite是無類型的. 這意味著你可以儲存任何類型的資料到你所想要儲存的任何錶的任何列
中, 無論這列聲明的資料類型是什麼(只有自動遞增Integer Primary Key才有用). 對於SQLite來說對欄位不指定類型是完
全有效. 如:
Create Table ex3(a, b, c);
即使SQLite允許忽略資料類型, 但是仍然建議在你的Create Table語句中指定資料類型. 因為資料類型對於你和其他的程
序員交流, 或者你準備換掉你的資料庫引擎是非常有用的. SQLite支援常見的資料類型, 如:
SQL代碼
CREATE TABLE my_table(
id integer primary key autoincrement,
a VARCHAR(10),
b NVARCHAR(15),
c TEXT,
d INTEGER,
e FLOAT,
f BOOLEAN,
g CLOB,
h BLOB,
i NUMERIC,
j DECIMAL(4,2),
k TIMESTAMP,
l DATETIME
);
#資料庫操作
查看當前資料庫
sqlite>.databases
查看當前資料庫表
sqlite>.table
查看資料表結構
sqlite>.schema school
修改表結構
sqlite不能直接刪除欄位,能添加欄位
sqlite>alter table s_class add column bDo int default 0;
刪除欄位需要到處sql,然後再匯入資料(形似mysql)
刪除資料表
sqlite>drop table s_class;
作者“程式人生”