SQLite的基本使用

來源:互聯網
上載者:User

標籤:key   ref   tin   結合   底線   文法   unix   建立表   lis   

SQLite 建立表

SQLite 的 CREATE TABLE 語句用於在任何給定的資料庫建立一個新表。建立基本表,涉及到命名表、定義列及每一列的資料類型。

文法

CREATE TABLE 語句的基本文法如下:

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

CREATE TABLE 是告訴資料庫系統建立一個新表的關鍵字。CREATE TABLE 語句後跟著表的唯一的名稱或標識。您也可以選擇指定帶有 table_name 的 database_name

SQLite 刪除表

SQLite 的 DROP TABLE 語句用來刪除表定義及其所有相關資料、索引、觸發器、約束和該表的許可權規範。

使用此命令時要特別注意,因為一旦一個表被刪除,表中所有資訊也將永遠丟失。
文法

DROP TABLE 語句的基本文法如下。您可以選擇指定帶有表名的資料庫名稱,如下所示:

DROP TABLE database_name.table_name;
SQLite Insert 語句

SQLite 的 INSERT INTO 語句用於向資料庫的某個表中添加新的資料行

文法

INSERT INTO 語句有兩種基本文法,如下所示:

insert into TABLE_NAME (column1, column2, column3,...columnN)]  values(value1, value2, value3,...valueN);

在這裡,column1, column2,...columnN 是要插入資料的表中的列的名稱。

如果要為表中的所有列添加值,您也可以不需要在 SQLite 查詢中指定列名稱。但要確保值的順序與列在表中的順序一致。SQLite 的 INSERT INTO 文法如下:

insert into TABLE_NAME values(value1,value2,value3,...valueN);
使用一個表來填充另一個表
您可以通過在一個有一組欄位的表上使用 select 語句,填充資料到另一個表中。下面是文法:

insert into first_table_name [(column1, column2, ... columnN)] select column1, column2,
...columnN from second_table_name[wherecondition];
 

SQLite Select 語句

SQLite 的 SELECT 語句用於從 SQLite 資料庫表中擷取資料,以結果表的形式返回資料。這些結果表也被稱為結果集。

文法

SQLite 的 SELECT 語句的基本文法如下:

select column1, column2, columnN FROM table_name;

在這裡,column1, column2...是表的欄位,他們的值即是您要擷取的。如果您想擷取所有可用的欄位,那麼可以使用下面的文法:

SELECT * FROM table_name;
SQLite Update 語句

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

文法

帶有 WHERE 子句的 UPDATE 查詢的基本文法如下:

UPDATE table_nameSET column1 = value1, column2 = value2...., columnN = valueNWHERE [condition];

您可以使用 AND 或 OR 運算子來結合 N 個數量的條件。

SQLite Delete 語句

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

文法

帶有 WHERE 子句的 DELETE 查詢的基本文法如下:

DELETE FROM table_nameWHERE [condition];

您可以使用 AND 或 OR 運算子來結合 N 個數量的條件。

SQLite Where 子句

SQLite的 WHERE 子句用於指定從一個表或多個表中擷取資料的條件。

如果滿足給定的條件,即為真(true)時,則從表中返回特定的值。您可以使用 WHERE 子句來過濾記錄,只擷取需要的記錄。

WHERE 子句不僅可用在 SELECT 語句中,它也可用在 UPDATE、DELETE 語句中,等等,這些我們將在隨後的章節中學習到。

文法

SQLite 的帶有 WHERE 子句的 SELECT 語句的基本文法如下:

SELECT column1, column2, columnN FROM table_nameWHERE [condition]


SQLite AND/OR 運算子

SQLite 的 AND 和 OR 運算子用於編譯多個條件來縮小在 SQLite 語句中所選的資料。這兩個運算子被稱為串連運算子。

這些運算子為同一個 SQLite 語句中不同的運算子之間的多個比較提供了可能。

AND 運算子

AND 運算子允許在一個 SQL 陳述式的 WHERE 子句中的多個條件的存在。使用 AND 運算子時,只有當所有條件都為真(true)時,整個條件為真(true)。例如,只有當 condition1 和 condition2 都為真(true)時,[condition1] AND [condition2] 為真(true)。

文法

帶有 WHERE 子句的 AND 運算子的基本文法如下:

SELECT column1, column2, columnN FROM table_nameWHERE [condition1] AND [condition2]...AND [conditionN];

您可以使用 AND 運算子來結合 N 個數量的條件。SQLite 語句需要執行的動作是,無論是事務或查詢,所有由 AND 分隔的條件都必須為真(TRUE)。

SQLite Like 子句

SQLite 的 LIKE 運算子是用來匹配萬用字元指定模式的文本值。如果搜尋運算式與模式運算式匹配,LIKE 運算子將返回真(true),也就是 1。這裡有兩個萬用字元與 LIKE 運算子一起使用:

  • 百分比符號 (%)

  • 底線 (_)

百分比符號(%)代表零個、一個或多個數字或字元。底線(_)代表一個單一的數字或字元。這些符號可以被組合使用。

文法

% 和 _ 的基本文法如下:


SELECT FROM table_nameWHERE column LIKE ‘XXXX%‘or SELECT FROM table_nameWHERE column LIKE ‘%XXXX%‘orSELECT FROM table_nameWHERE column LIKE ‘XXXX_‘orSELECT FROM table_nameWHERE column LIKE ‘_XXXX‘orSELECT FROM table_nameWHERE column LIKE ‘_XXXX_‘

您可以使用 AND 或 OR 運算子來結合 N 個數量的條件。在這裡,XXXX 可以是任何數字或字串值。

執行個體

下面一些執行個體示範了 帶有 ‘%‘ 和 ‘_‘ 運算子的 LIKE 子句不同的地方:

語句 描述
WHERE SALARY LIKE ‘200%‘ 尋找以 200 開頭的任意值
WHERE SALARY LIKE ‘%200%‘ 尋找任意位置包含 200 的任意值
WHERE SALARY LIKE ‘_00%‘ 尋找第二位和第三位為 00 的任意值
WHERE SALARY LIKE ‘2_%_%‘ 尋找以 2 開頭,且長度至少為 3 個字元的任意值
WHERE SALARY LIKE ‘%2‘ 尋找以 2 結尾的任意值
WHERE SALARY LIKE ‘_2%3‘ 尋找第二位為 2,且以 3 結尾的任意值
WHERE SALARY LIKE ‘2___3‘ 尋找長度為 5 位元,且以 2 開頭以 3 結尾的任意值
SQLite Glob 子句

SQLite 的 GLOB 運算子是用來匹配萬用字元指定模式的文本值。如果搜尋運算式與模式運算式匹配,GLOB 運算子將返回真(true),也就是 1。與 LIKE 運算子不同的是,GLOB 是大小寫敏感的,對於下面的萬用字元,它遵循 UNIX 的文法。

  • 星號 (*)

  • 問號 (?)

星號(*)代表零個、一個或多個數字或字元。問號(?)代表一個單一的數字或字元。這些符號可以被組合使用。

文法

* 和 ? 的基本文法如下:


SELECT FROM table_nameWHERE column GLOB ‘XXXX*‘or SELECT FROM table_nameWHERE column GLOB ‘*XXXX*‘orSELECT FROM table_nameWHERE column GLOB ‘XXXX?‘orSELECT FROM table_nameWHERE column GLOB ‘?XXXX‘orSELECT FROM table_nameWHERE column GLOB ‘?XXXX?‘orSELECT FROM table_nameWHERE column GLOB ‘????‘

您可以使用 AND 或 OR 運算子來結合 N 個數量的條件。在這裡,XXXX 可以是任何數字或字串值。

執行個體

下面一些執行個體示範了 帶有 ‘*‘ 和 ‘?‘ 運算子的 GLOB 子句不同的地方:

語句 描述
WHERE SALARY GLOB ‘200*‘ 尋找以 200 開頭的任意值
WHERE SALARY GLOB ‘*200*‘ 尋找任意位置包含 200 的任意值
WHERE SALARY GLOB ‘?00*‘ 尋找第二位和第三位為 00 的任意值
WHERE SALARY GLOB ‘2??‘ 尋找以 2 開頭,且長度至少為 3 個字元的任意值
WHERE SALARY GLOB ‘*2‘ 尋找以 2 結尾的任意值
WHERE SALARY GLOB ‘?2*3‘ 尋找第二位為 2,且以 3 結尾的任意值
WHERE SALARY GLOB ‘2???3‘ 尋找長度為 5 位元,且以 2 開頭以 3 結尾的任意值


SQLite的基本使用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.