2025-02-15

一般數據采用的固定的靜態數據類型,而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;

作者“程序人生”
 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *