• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • 數據庫SQLite

    標簽: 數據庫SQLite  數據庫  SQLite  數據表  數據庫語法

    數據庫SQLite

    了解最輕巧的數據庫SQLite

    SQLite,是一款輕型的數據庫,占用資源非常低,它的源代碼不受版權限制,能夠支持Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程序語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源的世界著名數據庫管理系統來講,它的處理速度比他們都快。SQLite的最新版本是SQLite 3,是實現了自給自足的、無服務器的、零配置的、事務性的在世界上最廣泛部署的SQL 數據庫引擎。

    SQLite下載和安裝

    • 地址:http://www.sqlite.org/download.html 下載預編譯的Windows二進制文件。
    • 需要下載壓縮文件s:qlite-tools-win32-.zip 和 sqlite-dll-win64-.zip 。
      下載問件
    • 創建一個文件夾:F:\sqlite放置這些文件
    • 進入F:\sqlite目錄并打開sqlite3命令。如下圖所示:
      命令

    SQLite創建數據庫

    在SQLite中,sqlite3命令用于創建新的數據庫。
    語法:

     1.sqlite3 DatabaseName.db
    

    示例:
    創建一個名稱為“test.db”的數據庫:
    sqlite3 test.db,執行命令后,就創建了數據庫。 可以使用“.databases”命令檢查創建的數據庫。如下所示:
    t3
    還可以在SQLite根文件夾中看到創建的數據庫:
    t4

    SQLite創建表

    在SQLite中,CREATE TABLE語句用于創建新表。 在創建表時,需要為表指定一個名稱并定義表的每列和數據類型。
    語法:

    • SQLite ANALYZE 語句:
    ANALYZE;
    or
    ANALYZE database_name;
    or
    ANALYZE database_name.table_name;
    
    • SQLite AND/OR 子句:
    SELECT column1, column2....columnN
    FROM   table_name
    WHERE  CONDITION-1 {AND|OR} CONDITION-2;
    
    • ALTER語句
      SQLite ALTER TABLE 語句:
    ALTER TABLE table_name ADD COLUMN column_def...;
    

    SQLite ALTER TABLE 語句(Rename):

    ALTER TABLE table_name RENAME TO new_table_name;
    
    • SQLite ATTACH DATABASE 語句:
    ATTACH DATABASE 'DatabaseName' As 'Alias-Name';
    
    • SQLite BEGIN TRANSACTION 語句:
    or
    BEGIN EXCLUSIVE TRANSACTION;
    
    • SQLite BETWEEN 子句:
    SELECT column1, column2....columnN
    FROM   table_name
    WHERE  column_name BETWEEN val-1 AND val-2;
    
    • SQLite COMMIT 語句:
    COMMIT;
    
    • ALTER語句
      SQLite CREATE INDEX 語句:
    CREATE INDEX index_name
    ON table_name ( column_name COLLATE NOCASE );
    

    SQLite CREATE UNIQUE INDEX 語句:

    CREATE UNIQUE INDEX index_name
    ON table_name ( column1, column2,...columnN);
    

    SQLite CREATE TABLE 語句:

    CREATE TABLE table_name(
       column1 datatype,
       column2 datatype,
       column3 datatype,
       .....
       columnN datatype,
       PRIMARY KEY( one or more columns )
    );
    

    SQLite CREATE TRIGGER 語句:

    CREATE TRIGGER database_name.trigger_name 
    BEFORE INSERT ON table_name FOR EACH ROW
    BEGIN 
       stmt1; 
       stmt2;
       ....
    END;
    

    SQLite CREATE VIEW 語句:

    CREATE VIEW database_name.view_name  AS
    SELECT statement....;
    

    SQLite CREATE VIRTUAL TABLE 語句:

    CREATE VIRTUAL TABLE database_name.table_name USING weblog( access.log );
    or
    CREATE VIRTUAL TABLE database_name.table_name USING fts3( );
    
    • SQLite COMMIT TRANSACTION 語句:
    COMMIT;
    
    • SQLite COUNT 子句:
    SELECT COUNT(column_name)
    FROM   table_name
    WHERE  CONDITION;
    
    • SQLite DELETE 語句:
    DELETE FROM table_name
    WHERE  {CONDITION};
    
    • SQLite DETACH DATABASE 語句:
    DETACH DATABASE 'Alias-Name';
    
    • SQLite DISTINCT 子句:
    SELECT DISTINCT column1, column2....columnN
    FROM   table_name;
    
    - SQLite Insert語句

    SQLite 的 INSERT INTO 語句用于向數據庫的某個表中添加新的數據行。
    語法如下:

    ①INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)]  
    VALUES (value1, value2, value3,...valueN);
    ②INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
    
    - SQLite Select語句

    SQLite 的 SELECT 語句用于從 SQLite 數據庫表中獲取數據,以結果表的形式返回數據。這些結果表也被稱為結果集。
    語法如下:

    ①SELECT column1, column2, columnN FROM table_name;
    ②SELECT * FROM table_name;
    
    - SQLite 表達式

    表達式是一個或多個值、運算符和計算值的SQL函數的組合。SQL 表達式與公式類似,都寫在查詢語言中。您還可以使用特定的數據集來查詢數據庫。

    ①SQLite - 布爾表達式

    SQLite 的布爾表達式在匹配單個值的基礎上獲取數據。語法如下:

    SELECT column1, column2, columnN 
    FROM table_name 
    WHERE SINGLE VALUE MATCHING EXPRESSION;`
    
    ②SQLite - 數值表達式

    這些表達式用來執行查詢中的任何數學運算。語法如下:

    SELECT numerical_expression as  OPERATION_NAME
    [FROM table_name WHERE CONDITION] ;
    
    ③SQLite - 日期表達式

    日期表達式返回當前系統日期和時間值,這些表達式將被用于各種數據操作。

    sqlite>  SELECT CURRENT_TIMESTAMP;
    CURRENT_TIMESTAMP = 2018-07-8 09:34:34
    
    SQLite Where子句

    SQLite的 WHERE 子句用于指定從一個表或多個表中獲取數據的條件。如果滿足給定的條件,即為真(true)時,則從表中返回特定的值。您可以使用 WHERE 子句來過濾記錄,只獲取需要的記錄。WHERE 子句不僅可用在 SELECT 語句中,它也可用在 UPDATE、DELETE 語句中,等等。
    語法如下:

    SELECT column1, column2, columnN 
    FROM table_name
    WHERE [condition]
    
    SQLite Update語句

    SQLite 的 UPDATE 查詢用于修改表中已有的記錄。可以使用帶有 WHERE 子句的 UPDATE 查詢來更新選定行,否則所有的行都會被更新。
    語法如下:

    UPDATE table_name
    SET column1 = value1, column2 = value2...., columnN = valueN
    WHERE [condition];
    
    SQLite Delete語句

    SQLite 的 DELETE 查詢用于刪除表中已有的記錄。可以使用帶有 WHERE 子句的 DELETE 查詢來刪除選定行,否則所有的記錄都會被刪除。
    語法如下:

    DELETE FROM table_name
    WHERE [condition];
    
    SQLite Like子句

    SQLite 的 LIKE 運算符是用來匹配通配符指定模式的文本值。如果搜索表達式與模式表達式匹配,LIKE 運算符將返回真(true),也就是 1。這里有兩個通配符與 LIKE 運算符一起使用:
    百分號(%)代表零個、一個或多個數字或字符。下劃線(_)代表一個單一的數字或字符。這些符號可以被組合使用。% 和 _ 的基本語法如下:

    SELECT column_list 
    FROM table_name
    WHERE column LIKE 'XXXX%'
    or 
    SELECT column_list 
    FROM table_name
    WHERE column LIKE '%XXXX%'
    or
    SELECT column_list 
    FROM table_name
    WHERE column LIKE 'XXXX_'
    or
    SELECT column_list 
    FROM table_name
    WHERE column LIKE '_XXXX'
    or
    SELECT column_list 
    FROM table_name
    WHERE column LIKE '_XXXX_'
    
    SQite Glob子句

    SQLite 的 GLOB 運算符是用來匹配通配符指定模式的文本值。如果搜索表達式與模式表達式匹配,GLOB 運算符將返回真(true),也就是 1。與 LIKE 運算符不同的是,GLOB 是大小寫敏感的,對于下面的通配符,它遵循 UNIX 的語法。
    星號(*)代表零個、一個或多個數字或字符。問號(?)代表一個單一的數字或字符。這些符號可以被組合使用。

    • 和 ? 的基本語法如下:
    SELECT FROM table_name
    WHERE column GLOB 'XXXX*'
    or 
    SELECT FROM table_name
    WHERE column GLOB '*XXXX*'
    or
    SELECT FROM table_name
    WHERE column GLOB 'XXXX?'
    or
    SELECT FROM table_name
    WHERE column GLOB '?XXXX'
    or
    SELECT FROM table_name
    WHERE column GLOB '?XXXX?'
    or
    SELECT FROM table_name
    WHERE column GLOB '????'
    
    SQLite Limit子句

    SQLite 的 LIMIT 子句用于限制由 SELECT 語句返回的數據數量。
    語法如下:

    SELECT column1, column2, columnN 
    FROM table_name
    LIMIT [no of rows]
    
    SQLite Order By

    SQLite 的 ORDER BY 子句是用來基于一個或多個列按升序或降序順序排列數據。
    語法如下:

    SELECT column-list 
    FROM table_name 
    [WHERE condition] 
    [ORDER BY column1, column2, .. columnN] [ASC | DESC];
    
    SQLite Group By

    SQLite 的 GROUP BY 子句用于與 SELECT 語句一起使用,來對相同的數據進行分組。
    在 SELECT 語句中,GROUP BY 子句放在 WHERE 子句之后,放在 ORDER BY 子句之前。
    下面給出了 GROUP BY 子句的基本語法。GROUP BY 子句必須放在 WHERE 子句中的條件之后,必須放在 ORDER BY 子句之前。

    SELECT column-list
    FROM table_name
    WHERE [ conditions ]
    GROUP BY column1, column2....columnN
    ORDER BY column1, column2....columnN
    
    SQLite Having子句

    HAVING 子句允許指定條件來過濾將出現在最終結果中的分組結果。
    WHERE 子句在所選列上設置條件,而 HAVING 子句則在由 GROUP BY 子句創建的分組上設置條件。
    下面是 HAVING 子句在 SELECT 查詢中的位置:

    SELECT
    FROM
    WHERE
    GROUP BY
    HAVING
    ORDER BY
    

    在一個查詢中,HAVING 子句必須放在 GROUP BY 子句之后,必須放在 ORDER BY 子句之前。下面是包含 HAVING 子句的 SELECT 語句的語法:

    SELECT column1, column2
    FROM table1, table2
    WHERE [ conditions ]
    GROUP BY column1, column2
    HAVING [ conditions ]
    ORDER BY column1, column2
    
    SQLite Dinstinct關鍵字

    SQLite 的 DISTINCT 關鍵字與 SELECT 語句一起使用,來消除所有重復的記錄,并只獲取唯一一次記錄。
    有可能出現一種情況,在一個表中有多個重復的記錄。當提取這樣的記錄時,DISTINCT 關鍵字就顯得特別有意義,它只獲取唯一一次記錄,而不是獲取重復記錄。
    用于消除重復記錄的 DISTINCT 關鍵字的基本語法如下:

    SELECT DISTINCT column1, column2,.....columnN 
    FROM table_name
    WHERE [condition]
    
    版權聲明:本文為qq_42446456原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qq_42446456/article/details/80919813

    智能推薦

    數據庫SQLite<一>

    一、SQLite數據庫簡介 SQLite第一個Alpha版本誕生于2000年5月,它是一款輕量級數據庫,它的設計目標是嵌入式的,占用資源非常的低,只需要幾百K的內存就夠了。SQLite已經被多種軟件和產品使用,Mozilla FireFox就是使用SQLite來存儲配置數據的,Android和iPhone都是使用SQLite來存儲數據的。 二、Android中如何使用SQLite 1. 使用SQL...

    《Python》《SQLite》Python連接SQLite數據庫,讀表

        配置Python環境的方法在我的博客中已經詳細介紹。 一、SQLite和PySQLite     在最近的Python版本中(從2.5開始),SQLite的優勢在于它的一個包裝(PySQLite)已經被包括在標準庫內。SQLite在Python中的模塊名稱為“sqlite3”,我們可以在...

    《SQLite》最輕巧的數據庫SQLite——初探

    文章目錄 一、SQLite概念及優點 二、SQLite圖形化管理工具——SQLite Expert Professional 三、SQLite基礎語言 1、創建數據庫 2、刪除數據庫 3、創建表 4、刪除表 5、表操作語句 一、SQLite概念及優點 概念: SQLite是一款嵌入式數據庫,和Oracle、Mysql、DB2等數據庫不同,比如Oracle它是與程序分離的,而...

    Android數據庫 之 SQLite數據庫

    2019獨角獸企業重金招聘Python工程師標準>>> 每個應用程序都要使用數據,Android應用程序也不例外,Android使用開源的、與操作系統無關的SQL數據庫—SQLite。 SQLite第一個Alpha版本誕生于2000年5月,它是一款輕量級數據庫,它的設計目標是嵌入式的,占用資源非常的低,只需要幾百K的內存就夠了。 SQLite已經被多種軟件和產品使用,...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    猜你喜歡

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    Linux C系統編程-線程互斥鎖(四)

    互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...

    精品国产乱码久久久久久蜜桃不卡