程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQLite數據庫操作實踐

SQLite數據庫操作實踐

編輯:關於SqlServer

     SQLite數據庫操作實踐
    SQLite存儲類型
    null - 空值 
    integer - 有符號整數,自增列定義 id integer primary key autoincrement
    real - 浮點數,存儲為8-byte IEEE浮點數 
    text - 文本字符串 使用數據庫編碼(UTF-8, UTF-16BE 或 UTF-16LE)進行存儲
    blob - 二進制數據,如圖片、聲音等等 
    也可以接受其它數據類型例如datetime,varchar,nvarchar,decimal,float,double,bigint 等等

    Last login: Tue Jan 7 19:05:33 2014 from 192.168.10.1
    [myth@host10 ~]$ su
    Password: 
    [root@host10 myth]# pwd //顯示當前工作目錄

    /home/myth

    進入SQLite命令行創建數據庫並且打開數據庫

    [root@host10 myth]# sqlite3 bookstore.db 
    SQLite version 3.6.20
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite> .databases
    seq name file 
    --- --------------- ----------------------------------------------------------
    0 main /home/myth/bookstore.db 
    sqlite> 
    sqlite> .quit //退出SQLite命令行環境

    [root@host10 myth]#

    打開數據庫

    [root@host10 myth]# sqlite3 bookstore.db //如果數據庫已經存在了,則打開數據庫
    SQLite version 3.6.20
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite> .help //查看幫助信息
    .backup ?DB? FILE Backup DB (default "main") to FILE
    .bail ON|OFF Stop after hitting an error. Default OFF
    .databases List names and files of attached databases
    .dump ?TABLE? ... Dump the database in an SQL text format
    If TABLE specified, only dump tables matching
    LIKE pattern TABLE.
    .echo ON|OFF Turn command echo on or off
    .exit Exit this program
    .explain ON|OFF Turn output mode suitable for EXPLAIN on or off.
    .genfkey ?OPTIONS? Options are:
    --no-drop: Do not drop old fkey triggers.
    --ignore-errors: Ignore tables with fkey errors
    --exec: Execute generated SQL immediately
    See file tool/genfkey.README in the source 
    distribution for further information.
    .header(s) ON|OFF Turn display of headers on or off
    .help Show this message
    .import FILE TABLE Import data from FILE into TABLE
    .indices ?TABLE? Show names of all indices
    If TABLE specified, only show indices for tables
    matching LIKE pattern TABLE.
    .load FILE ?ENTRY? Load an extension library
    .mode MODE ?TABLE? Set output mode where MODE is one of:
    csv Comma-separated values
    column Left-aligned columns. (See .width)
    html HTML <table> code
    insert SQL insert statements for TABLE
    line One value per line
    list Values delimited by .separator string
    tabs Tab-separated values
    tcl TCL list elements
    .nullvalue STRING Print STRING in place of NULL values
    .output FILENAME Send output to FILENAME
    .output stdout Send output to the screen
    .prompt MAIN CONTINUE Replace the standard prompts
    .quit Exit this program
    .read FILENAME Execute SQL in FILENAME
    .restore ?DB? FILE Restore content of DB (default "main") from FILE
    .schema ?TABLE? Show the CREATE statements
    If TABLE specified, only show tables matching
    LIKE pattern TABLE.
    .separator STRING Change separator used by output mode and .import
    .show Show the current values for various settings
    .tables ?TABLE? List names of tables
    If TABLE specified, only list tables matching
    LIKE pattern TABLE.
    .timeout MS Try opening locked tables for MS milliseconds
    .width NUM NUM ... Set column widths for "column" mode
    .timer ON|OFF Turn the CPU timer measurement on or off

    sqlite>

    創建表

    sqlite> create table books(id integer primary key, title nvarchar(50),pubdate datetime); 
    sqlite> create table publishers(id integer primary key, name varchar(20)); 
    sqlite> .tables //查看數據庫中存在的表
    books publishers
    sqlite> .schema books //顯示表結構
    CREATE TABLE books(id integer primary key, title nvarchar(50),pubdate datetime);
    sqlite> 
    sqlite> alter table books add column publisher text not null default '' collate nocase; //增加表字段
    sqlite> .schema books //顯示表結構
    CREATE TABLE books(id integer primary key, title nvarchar(50),pubdate datetime, publisher text not null default '' collate nocase);
    sqlite> 
    sqlite> alter table publishers rename to authors; //修改表名
    sqlite> .tables //查看數據庫中存在的表
    authors books 

    sqlite>

    修改字段名稱

    //修改字段名稱和數據類型(刪除字段也類似),更簡單的做法:如果沒有重要數據,可以直接刪除表重新創建

    sqlite> alter table authors rename to authorsOld;
    sqlite> create table authors (id integer primary key, author nvarchar(20));
    sqlite> insert into authors select id, name from authorsOld;
    sqlite> drop table authorsOld;
    sqlite> .schema authors
    CREATE TABLE authors (id integer primary key, author nvarchar(20));

    //還可以把數據導出成insert語句,然後刪除表,重新創建表,執行所有insert語句添加數據

    顯示數據庫所有表名稱

    sqlite> select name from sqlite_master where type='table' order by name; //顯示數據庫所有表名稱,sqlite_master表是只讀的
    authors
    books
    sqlite> select name from 
    ...> (SELECT * from sqlite_master union all select * from sqlite_temp_master)
    ...> where type='table' order by name; //顯示數據庫所有表名稱(永久和臨時)
    authors
    books

    sqlite>

    刪除表

    sqlite> drop table authors; 
    sqlite> .tables //查看數據庫中存在的表
    books
    sqlite>

    往表中插入數據
    sqlite> insert into books(id,title,pubdate,publisher) values(1,'交換機.路由器.防火牆','2007-08-28','電子工業出版社');
    sqlite> insert into books(id,title,pubdate,publisher) values(2, '網絡硬件搭建與配置實踐','2007-01-20','電子工業出版社');
    sqlite> 
    sqlite> insert into books(title,pubdate,publisher) values('英語沙龍 ENGLISH SALON 實戰版','2005-12-31','世界知識出版社');
    sqlite> insert into books(title,pubdate,publisher) values('英語沙龍 ENGLISH SALON 朗讀版','2006-12-20','世界知識出版社');
    sqlite> 
    sqlite> insert into books 
    ...> select 100,'軟件項目管理理論與案例分析','2007-08-30','中國電力出版社' union all 
    ...> select 105,'初級會計電算化','2006-03-27','中國財政經濟出版社';
    sqlite> 
    sqlite> insert into books(id,title,pubdate,publisher) 
    ...> select 300,'供應鏈管理 ------戰略、規劃與運營','2003-02-28','社會科學文獻出版社' union all
    ...> select 301,'UML實戰教程 ------面向.NET開發人員','2006-12-31','清華大學出版社' union all
    ...> select 302,'Project 2003 企業項目管理 快譯通','2007-02-28','人民郵電出版社';
    sqlite> 
    sqlite> select * from books;
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    sqlite> 

    查詢分頁
    sqlite> select * from books limit 0,5; 
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    sqlite> 
    sqlite> select * from books limit 5,5;
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    sqlite> 

    查詢分頁
    sqlite> select * from books limit 5 offset 0;
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    sqlite> 
    sqlite> select * from books limit 5 offset 5;
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    sqlite> 

    查詢分頁(推薦此法)
    sqlite> select * from books where id >=(select id from books order by id limit 5*0,1) limit 5;
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    sqlite> 
    sqlite> select * from books where id >=(select id from books order by id limit 5*1,1) limit 5;
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    sqlite> 

    設置格式化查詢結果
    sqlite> .headers on
    sqlite> .mode line
    sqlite> 
    sqlite> .show
    echo: off
    explain: off
    headers: on
    mode: line
    nullvalue: ""
    output: stdout
    separator: "t"
    width: 
    sqlite> select * from books;
    id = 1
    title = 交換機.路由器.防火牆
    pubdate = 2007-08-28
    publisher = 電子工業出版社

    id = 2
    title = 網絡硬件搭建與配置實踐
    pubdate = 2007-01-20
    publisher = 電子工業出版社

    id = 3
    title = 英語沙龍 ENGLISH SALON 實戰版
    pubdate = 2005-12-31
    publisher = 世界知識出版社

    id = 4
    title = 英語沙龍 ENGLISH SALON 朗讀版
    pubdate = 2006-12-20
    publisher = 世界知識出版社

    id = 100
    title = 軟件項目管理理論與案例分析
    pubdate = 2007-08-30
    publisher = 中國電力出版社

    id = 105
    title = 初級會計電算化
    pubdate = 2006-03-27
    publisher = 中國財政經濟出版社

    id = 300
    title = 供應鏈管理 ------戰略、規劃與運營
    pubdate = 2003-02-28
    publisher = 社會科學文獻出版社

    id = 301
    title = UML實戰教程 ------面向.NET開發人員
    pubdate = 2006-12-31
    publisher = 清華大學出版社

    id = 302
    title = Project 2003 企業項目管理 快譯通
    pubdate = 2007-02-28
    publisher = 人民郵電出版社
    sqlite> 

    設置格式化查詢結果"insert"模式下,返回的查詢結果將以SQL的INSERT語句形式進行顯示
    sqlite> .mode insert rebooks 
    sqlite> select * from books;
    INSERT INTO rebooks VALUES(1,'交換機.路由器.防火牆','2007-08-28','電子工業出版社');
    INSERT INTO rebooks VALUES(2,'網絡硬件搭建與配置實踐','2007-01-20','電子工業出版社');
    INSERT INTO rebooks VALUES(3,'英語沙龍 ENGLISH SALON 實戰版','2005-12-31','世界知識出版社');
    INSERT INTO rebooks VALUES(4,'英語沙龍 ENGLISH SALON 朗讀版','2006-12-20','世界知識出版社');
    INSERT INTO rebooks VALUES(100,'軟件項目管理理論與案例分析','2007-08-30','中國電力出版社');
    INSERT INTO rebooks VALUES(105,'初級會計電算化','2006-03-27','中國財政經濟出版社');
    INSERT INTO rebooks VALUES(300,'供應鏈管理 ------戰略、規劃與運營','2003-02-28','社會科學文獻出版社');
    INSERT INTO rebooks VALUES(301,'UML實戰教程 ------面向.NET開發人員','2006-12-31','清華大學出版社');
    INSERT INTO rebooks VALUES(302,'Project 2003 企業項目管理 快譯通','2007-02-28','人民郵電出版社');
    sqlite> 

    設置格式化查詢結果,將查詢結果寫入創建的空文件out_books.txt中
    sqlite> .mode list
    sqlite> .separator |
    sqlite> .output out_books.txt
    sqlite> select * from books;
    sqlite> .exit
    [root@host10 myth]# cat out_books.txt //查看寫入的文件內容
    id|title|pubdate|publisher
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    [root@host10 myth]# 

    創建視圖
    [root@host10 myth]# sqlite3 bookstore.db
    SQLite version 3.6.20
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite> create view v_books as select * from books;
    sqlite> .tables
    books v_books
    sqlite> .schema v_books
    CREATE VIEW v_books as select * from books;
    sqlite> 

    創建索引
    sqlite> create index index_books on books(publisher);
    sqlite> .indices books
    index_books
    sqlite> .dump //打印當前數據庫所有操作內容
    PRAGMA foreign_keys=OFF;
    BEGIN TRANSACTION;
    CREATE TABLE books(id integer primary key, title nvarchar(50),pubdate datetime, publisher text not null default '' collate nocase);
    INSERT INTO "books" VALUES(1,'交換機.路由器.防火牆','2007-08-28','電子工業出版社');
    INSERT INTO "books" VALUES(2,'網絡硬件搭建與配置實踐','2007-01-20','電子工業出版社');
    INSERT INTO "books" VALUES(3,'英語沙龍 ENGLISH SALON 實戰版','2005-12-31','世界知識出版社');
    INSERT INTO "books" VALUES(4,'英語沙龍 ENGLISH SALON 朗讀版','2006-12-20','世界知識出版社');
    INSERT INTO "books" VALUES(100,'軟件項目管理理論與案例分析','2007-08-30','中國電力出版社');
    INSERT INTO "books" VALUES(105,'初級會計電算化','2006-03-27','中國財政經濟出版社');
    INSERT INTO "books" VALUES(300,'供應鏈管理 ------戰略、規劃與運營','2003-02-28','社會科學文獻出版社');
    INSERT INTO "books" VALUES(301,'UML實戰教程 ------面向.NET開發人員','2006-12-31','清華大學出版社');
    INSERT INTO "books" VALUES(302,'Project 2003 企業項目管理 快譯通','2007-02-28','人民郵電出版社');
    CREATE VIEW v_books as select * from books;
    CREATE INDEX index_books on books(publisher);
    COMMIT;
    sqlite> 

    導出數據庫到 SQL 文件
    sqlite> .output bookstore.sql //創建一個空文件bookstore.sql
    sqlite> .dump //將dump顯示的內容寫入空文件bookstore.sql
    sqlite> .output stdout //恢復屏幕輸出,不再將後面其它操作輸出內容寫入到文件bookstore.sql中
    sqlite> .exit
    [root@host10 myth]# 
    [root@host10 myth]# cat bookstore.sql //查看寫入的文件內容
    PRAGMA foreign_keys=OFF;
    BEGIN TRANSACTION;
    CREATE TABLE books(id integer primary key, title nvarchar(50),pubdate datetime, publisher text not null default '' collate nocase);
    INSERT INTO "books" VALUES(1,'交換機.路由器.防火牆','2007-08-28','電子工業出版社');
    INSERT INTO "books" VALUES(2,'網絡硬件搭建與配置實踐','2007-01-20','電子工業出版社');
    INSERT INTO "books" VALUES(3,'英語沙龍 ENGLISH SALON 實戰版','2005-12-31','世界知識出版社');
    INSERT INTO "books" VALUES(4,'英語沙龍 ENGLISH SALON 朗讀版','2006-12-20','世界知識出版社');
    INSERT INTO "books" VALUES(100,'軟件項目管理理論與案例分析','2007-08-30','中國電力出版社');
    INSERT INTO "books" VALUES(105,'初級會計電算化','2006-03-27','中國財政經濟出版社');
    INSERT INTO "books" VALUES(300,'供應鏈管理 ------戰略、規劃與運營','2003-02-28','社會科學文獻出版社');
    INSERT INTO "books" VALUES(301,'UML實戰教程 ------面向.NET開發人員','2006-12-31','清華大學出版社');
    INSERT INTO "books" VALUES(302,'Project 2003 企業項目管理 快譯通','2007-02-28','人民郵電出版社');
    CREATE VIEW v_books as select * from books;
    CREATE INDEX index_books on books(publisher);
    COMMIT;
    [root@host10 myth]# 

    刪除數據庫
    [root@host10 myth]# find / -name bookstore.db
    /home/myth/bookstore.db
    [root@host10 myth]# rm -f /home/myth/bookstore.db

    從 SQL 文件導入數據庫
    [root@host10 myth]# sqlite3 bookstore.db
    SQLite version 3.6.20
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite> .databases
    seq name file 
    --- --------------- ----------------------------------------------------------
    0 main /home/myth/bookstore.db 
    sqlite> .tables
    sqlite>
    sqlite> .read bookstore.sql
    sqlite> .dump //打印當前數據庫所有操作內容
    PRAGMA foreign_keys=OFF;
    BEGIN TRANSACTION;
    CREATE TABLE books(id integer primary key, title nvarchar(50),pubdate datetime, publisher text not null default '' collate nocase);
    INSERT INTO "books" VALUES(1,'交換機.路由器.防火牆','2007-08-28','電子工業出版社');
    INSERT INTO "books" VALUES(2,'網絡硬件搭建與配置實踐','2007-01-20','電子工業出版社');
    INSERT INTO "books" VALUES(3,'英語沙龍 ENGLISH SALON 實戰版','2005-12-31','世界知識出版社');
    INSERT INTO "books" VALUES(4,'英語沙龍 ENGLISH SALON 朗讀版','2006-12-20','世界知識出版社');
    INSERT INTO "books" VALUES(100,'軟件項目管理理論與案例分析','2007-08-30','中國電力出版社');
    INSERT INTO "books" VALUES(105,'初級會計電算化','2006-03-27','中國財政經濟出版社');
    INSERT INTO "books" VALUES(300,'供應鏈管理 ------戰略、規劃與運營','2003-02-28','社會科學文獻出版社');
    INSERT INTO "books" VALUES(301,'UML實戰教程 ------面向.NET開發人員','2006-12-31','清華大學出版社');
    INSERT INTO "books" VALUES(302,'Project 2003 企業項目管理 快譯通','2007-02-28','人民郵電出版社');
    CREATE VIEW v_books as select * from books;
    CREATE INDEX index_books on books(publisher);
    COMMIT;
    sqlite> select * from books;
    1|交換機.路由器.防火牆|2007-08-28|電子工業出版社
    2|網絡硬件搭建與配置實踐|2007-01-20|電子工業出版社
    3|英語沙龍 ENGLISH SALON 實戰版|2005-12-31|世界知識出版社
    4|英語沙龍 ENGLISH SALON 朗讀版|2006-12-20|世界知識出版社
    100|軟件項目管理理論與案例分析|2007-08-30|中國電力出版社
    105|初級會計電算化|2006-03-27|中國財政經濟出版社
    300|供應鏈管理 ------戰略、規劃與運營|2003-02-28|社會科學文獻出版社
    301|UML實戰教程 ------面向.NET開發人員|2006-12-31|清華大學出版社
    302|Project 2003 企業項目管理 快譯通|2007-02-28|人民郵電出版社
    sqlite> 


    設置格式化查詢結果,將查詢結果寫入創建的空文件bookstore.csv中
    sqlite> .output bookstore.csv //創建一個空文件 bookstore.csv
    sqlite> .separator , // 設置字段之間的分隔符為逗號
    sqlite> select * from books; //將查詢的內容寫入空文件bookstore.csv中
    sqlite> .output stdout //恢復屏幕輸出,不再將後面其它操作輸出內容寫入到文件bookstore.csv中
    sqlite> delete from books; //刪除表中的所有數據為後面的操作從文件導入數據做實驗准備
    sqlite> select count(*) from books;
    0
    sqlite> .exit //退出SQLite命令行環境
    [root@host10 myth]# 
    [root@host10 myth]# cat bookstore.csv //查看寫入的文件內容
    1,交換機.路由器.防火牆,2007-08-28,電子工業出版社
    2,網絡硬件搭建與配置實踐,2007-01-20,電子工業出版社
    3,英語沙龍 ENGLISH SALON 實戰版,2005-12-31,世界知識出版社
    4,英語沙龍 ENGLISH SALON 朗讀版,2006-12-20,世界知識出版社
    100,軟件項目管理理論與案例分析,2007-08-30,中國電力出版社
    105,初級會計電算化,2006-03-27,中國財政經濟出版社
    300,供應鏈管理 ------戰略、規劃與運營,2003-02-28,社會科學文獻出版社
    301,UML實戰教程 ------面向.NET開發人員,2006-12-31,清華大學出版社
    302,Project 2003 企業項目管理 快譯通,2007-02-28,人民郵電出版社
    [root@host10 myth]# 

    從 CSV 文件導入數據到表中(導入到新建的表中)
    [root@host10 myth]# sqlite3 bookstore.db
    SQLite version 3.6.20
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite>
    sqlite >CREATE TABLE rebooks(id integer primary key, title nvarchar(50),pubdate datetime, publisher text not null default '' collate nocase);
    sqlite> .separator ,
    sqlite >.import bookstore.csv rebooks
    sqlite >select * from rebooks;
    sqlite> select * from rebooks;
    1,交換機.路由器.防火牆,2007-08-28,電子工業出版社
    2,網絡硬件搭建與配置實踐,2007-01-20,電子工業出版社
    3,英語沙龍 ENGLISH SALON 實戰版,2005-12-31,世界知識出版社
    4,英語沙龍 ENGLISH SALON 朗讀版,2006-12-20,世界知識出版社
    100,軟件項目管理理論與案例分析,2007-08-30,中國電力出版社
    105,初級會計電算化,2006-03-27,中國財政經濟出版社
    300,供應鏈管理 ------戰略、規劃與運營,2003-02-28,社會科學文獻出版社
    301,UML實戰教程 ------面向.NET開發人員,2006-12-31,清華大學出版社
    302,Project 2003 企業項目管理 快譯通,2007-02-28,人民郵電出版社
    sqlite> 

    從 CSV 文件導入數據到表中(導入到已存在的表中)
    sqlite >
    sqlite> .separator ,
    sqlite >.import bookstore.csv books
    sqlite> .import bookstore.csv books
    sqlite> select * from books;
    1,交換機.路由器.防火牆,2007-08-28,電子工業出版社
    2,網絡硬件搭建與配置實踐,2007-01-20,電子工業出版社
    3,英語沙龍 ENGLISH SALON 實戰版,2005-12-31,世界知識出版社
    4,英語沙龍 ENGLISH SALON 朗讀版,2006-12-20,世界知識出版社
    100,軟件項目管理理論與案例分析,2007-08-30,中國電力出版社
    105,初級會計電算化,2006-03-27,中國財政經濟出版社
    300,供應鏈管理 ------戰略、規劃與運營,2003-02-28,社會科學文獻出版社
    301,UML實戰教程 ------面向.NET開發人員,2006-12-31,清華大學出版社
    302,Project 2003 企業項目管理 快譯通,2007-02-28,人民郵電出版社
    sqlite> 


    備份數據庫
    [root@host10 myth]# sqlite3 bookstore.db .dump > bookstorebak20140107.sql
    刪除數據庫
    [root@host10 myth]# find / -name bookstore.db
    /home/myth
    [root@host10 myth]# rm -f /home/myth/bookstore.db
    恢復數據庫
    [root@host10 myth]# sqlite3 bookstore.db < bookstorebak20140107.sql

    SQLite 內建函數表
    算術函數
    abs(X) 返回給定數字表達式的絕對值
    max(X,Y[,...]) 返回表達式的最大值
    min(X,Y[,...]) 返回表達式的最小值
    random(*) 返回隨機數
    round(X[,Y]) 返回數字表達式並四捨五入為指定的長度或精度

    字符處理函數
    length(X) 返回給定字符串表達式的字符個數
    lower(X) 將大寫字符數據轉換為小寫字符數據後返回字符表達式
    upper(X) 返回將小寫字符數據轉換為大寫的字符表達式
    substr(X,Y,Z) 返回表達式的一部分
    randstr()
    quote(A)
    like(A,B) 確定給定的字符串是否與指定的模式匹配
    glob(A,B)

    條件判斷函數
    coalesce(X,Y[,...])
    ifnull(X,Y)
    nullif(X,Y)

    集合函數
    avg(X) 返回組中值的平均值
    count(X) 返回組中項目的數量
    max(X) 返回組中值的最大值
    min(X) 返回組中值的最小值
    sum(X) 返回表達式中所有值的和

    其他函數
    typeof(X) 返回數據的類型
    last_insert_rowid() 返回最後插入的數據的 ID
    sqlite_version(*) 返回 SQLite 的版本
    change_count() 返回受上一語句影響的行數

    last_statement_change_count()

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved