国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > SQLite > 正文

ubuntu下使用SQLite3的基本命令

2020-01-25 19:29:36
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

sqlite3一款主要用于嵌入式的輕量級(jí)數(shù)據(jù)庫(kù),本文旨在為熟悉sqlite3基本命令提供技術(shù)文檔。希望對(duì)讀者們有所幫助,如有疑問(wèn)請(qǐng)和我聯(lián)系,盡可能解答

系統(tǒng)平臺(tái):ubuntu10.04

簡(jiǎn)介

sqlite3一款主要用于嵌入式的輕量級(jí)數(shù)據(jù)庫(kù),本文旨在為熟悉sqlite3基本命令提供技術(shù)文檔。

備注:本文所有操作均在root用戶下進(jìn)行。

1、安裝sqlite3

ubuntu下安裝sqlite3直接在終端運(yùn)行命令:

 

  1. #apt-get install sqlite3 

?查看版本信息:

 
  1. #sqlite3 -version 

2 、sqlite3常用命令

當(dāng)前目錄下建立或打開test.db數(shù)據(jù)庫(kù)文件,并進(jìn)入sqlite命令終端,以sqlite>前綴標(biāo)識(shí):

 

 
  1. #sqlite3 test.db 
 

 

 

查看數(shù)據(jù)庫(kù)文件信息命令(注意命令前帶字符'.'):

 

 
  1. sqlite>.database 

查看所有表的創(chuàng)建語(yǔ)句:

 

 
  1. sqlite>.schema 

查看指定表的創(chuàng)建語(yǔ)句:

 

 
  1. sqlite>.schema table_name<br> 
 
  1. 以sql語(yǔ)句的形式列出表內(nèi)容: 
  2. sqlite>.dump table_name 
  3.  
  4. 設(shè)置顯示信息的分隔符: 
  5. sqlite>.separator symble 
  6. Example:設(shè)置顯示信息以‘:'分隔 
  7. sqlite>.separator : 
  8.  
  9. 設(shè)置顯示模式: 
  10. sqlite>.mode mode_name 
  11. Example:默認(rèn)為list,設(shè)置為column,其他模式可通過(guò).help查看mode相關(guān)內(nèi)容 
  12. sqlite>.mode column 
  13.  
  14. 輸出幫助信息: 
  15. sqlite>.help 
  16.  
  17. 設(shè)置每一列的顯示寬度: 
  18. sqlite>.width width_value 
  19. Example:設(shè)置寬度為2 
  20. sqlite>.width 2 
  21.  
  22. 列出當(dāng)前顯示格式的配置: 
  23. sqlite>.show 
  24.  
  25. 退出sqlite終端命令: 
  26. sqlite>.quit 
  27. 或 
  28. sqlite>.exit 

3、sqlite3指令

sql的指令格式:所有sql指令都是以分號(hào)(;)結(jié)尾,兩個(gè)減號(hào)(--)則表示注釋。

如:

 

 
  1. 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小學(xué)); 

該語(yǔ)句創(chuàng)建一個(gè)記錄學(xué)生信息的數(shù)據(jù)表。

3.1 sqlite3存儲(chǔ)數(shù)據(jù)的類型

NULL:標(biāo)識(shí)一個(gè)NULL值

INTERGER:整數(shù)類型

REAL:浮點(diǎn)數(shù)

TEXT:字符串

BLOB:二進(jìn)制數(shù)

3.2 sqlite3存儲(chǔ)數(shù)據(jù)的約束條件

Sqlite常用約束條件如下:

PRIMARY KEY - 主鍵:

1)主鍵的值必須唯一,用于標(biāo)識(shí)每一條記錄,如學(xué)生的學(xué)號(hào)

2)主鍵同時(shí)也是一個(gè)索引,通過(guò)主鍵查找記錄速度較快

3)主鍵如果是整數(shù)類型,該列的值可以自動(dòng)增長(zhǎng)

NOT NULL - 非空:

約束列記錄不能為空,否則報(bào)錯(cuò)

UNIQUE - 唯一:

除主鍵外,約束其他列的數(shù)據(jù)的值唯一

CHECK - 條件檢查:

約束該列的值必須符合條件才可存入

DEFAULT - 默認(rèn)值:

列數(shù)據(jù)中的值基本都是一樣的,這樣的字段列可設(shè)為默認(rèn)值

3.3 sqlite3常用指令

 

 
  1. 1)建立數(shù)據(jù)表 
  2. create table table_name(field1 type1, field2 type1, ...); 
  3. table_name是要?jiǎng)?chuàng)建數(shù)據(jù)表名稱,fieldx是數(shù)據(jù)表內(nèi)字段名稱,typex則是字段類型。 
  4. 例,建立一個(gè)簡(jiǎn)單的學(xué)生信息表,它包含學(xué)號(hào)與姓名等學(xué)生信息: 
  5. create table student_info(stu_no interger primary key, name text); 
  6.  
  7. 2)添加數(shù)據(jù)記錄 
  8. insert into table_name(field1, field2, ...) values(val1, val2, ...); 
  9. valx為需要存入字段的值。 
  10. 例,往學(xué)生信息表添加數(shù)據(jù): 
  11. Insert into student_info(stu_no, name) values(0001, alex); 
  12.  
  13. 3)修改數(shù)據(jù)記錄 
  14. update table_name set field1=val1, field2=val2 where expression; 
  15. where是sql語(yǔ)句中用于條件判斷的命令,expression為判斷表達(dá)式 
  16. 例,修改學(xué)生信息表學(xué)號(hào)為0001的數(shù)據(jù)記錄: 
  17. update student_info set stu_no=0001, name=hence where stu_no=0001; 
  18.  
  19. 4)刪除數(shù)據(jù)記錄 
  20. delete from table_name [where expression]; 
  21. 不加判斷條件則清空表所有數(shù)據(jù)記錄。 
  22. 例,刪除學(xué)生信息表學(xué)號(hào)為0001的數(shù)據(jù)記錄: 
  23. delete from student_info where stu_no=0001; 
  24.  
  25. 5)查詢數(shù)據(jù)記錄 
  26. select指令基本格式: 
  27. select columns from table_name [where expression]; 
  28. a查詢輸出所有數(shù)據(jù)記錄 
  29. select * from table_name; 
  30. b限制輸出數(shù)據(jù)記錄數(shù)量 
  31. select * from table_name limit val; 
  32. c升序輸出數(shù)據(jù)記錄 
  33. select * from table_name order by field asc; 
  34. d降序輸出數(shù)據(jù)記錄 
  35. select * from table_name order by field desc; 
  36. e條件查詢 
  37. select * from table_name where expression; 
  38. select * from table_name where field in ('val1''val2''val3'); 
  39. select * from table_name where field between val1 and val2; 
  40. f查詢記錄數(shù)目 
  41. select count (*) from table_name; 
  42. g區(qū)分列數(shù)據(jù) 
  43. select distinct field from table_name; 
  44. 有一些字段的值可能會(huì)重復(fù)出現(xiàn),distinct去掉重復(fù)項(xiàng),將列中各字段值單個(gè)列出。 
  45.  
  46. 6)建立索引 
  47. 當(dāng)說(shuō)數(shù)據(jù)表存在大量記錄,索引有助于加快查找數(shù)據(jù)表速度。 
  48. create index index_name on table_name(field); 
  49. 例,針對(duì)學(xué)生表stu_no字段,建立一個(gè)索引: 
  50. create index student_index on student_table(stu_no); 
  51. 建立完成后,sqlite3在對(duì)該字段查詢時(shí),會(huì)自動(dòng)使用該索引。 
  52.  
  53. 7)刪除數(shù)據(jù)表或索引 
  54. drop table table_name; 
  55. drop index index_name; 

參考資料:

http://www.sqlite.com.cn/MySqlite/4/378.Html

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 滨州市| 治多县| 托克托县| 漾濞| 中阳县| 龙口市| 顺义区| 绥阳县| 张北县| 财经| 绥德县| 馆陶县| 景泰县| 丰县| 澄江县| 泾川县| 泸州市| 德兴市| 延安市| 杂多县| 南靖县| 英德市| 大石桥市| 太仆寺旗| 来宾市| 碌曲县| 池州市| 龙门县| 泽库县| 西宁市| 盐山县| 丰台区| 辽宁省| 电白县| 招远市| 九龙城区| 苍山县| 清河县| 鹰潭市| 佛冈县| 吐鲁番市|