zoukankan      html  css  js  c++  java
  • SQLite的基本使用

    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_name
    SET column1 = value1, column2 = value2...., columnN = valueN
    WHERE [condition];

    您可以使用 AND 或 OR 运算符来结合 N 个数量的条件。

    SQLite Delete 语句

    SQLite 的 DELETE 查询用于删除表中已有的记录。可以使用带有 WHERE 子句的 DELETE 查询来删除选定行,否则所有的记录都会被删除。

    语法

    带有 WHERE 子句的 DELETE 查询的基本语法如下:

    DELETE FROM table_name
    WHERE [condition];

    您可以使用 AND 或 OR 运算符来结合 N 个数量的条件。

    
    

    SQLite Where 子句

    SQLite的 WHERE 子句用于指定从一个表或多个表中获取数据的条件。

    如果满足给定的条件,即为真(true)时,则从表中返回特定的值。您可以使用 WHERE 子句来过滤记录,只获取需要的记录。

    WHERE 子句不仅可用在 SELECT 语句中,它也可用在 UPDATE、DELETE 语句中,等等,这些我们将在随后的章节中学习到。

    语法

    SQLite 的带有 WHERE 子句的 SELECT 语句的基本语法如下:

    SELECT column1, column2, columnN 
    FROM table_name
    WHERE [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_name
    WHERE [condition1] AND [condition2]...AND [conditionN];

    您可以使用 AND 运算符来结合 N 个数量的条件。SQLite 语句需要执行的动作是,无论是事务或查询,所有由 AND 分隔的条件都必须为真(TRUE)。

    SQLite Like 子句

    SQLite 的 LIKE 运算符是用来匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1。这里有两个通配符与 LIKE 运算符一起使用:

    • 百分号 (%)

    • 下划线 (_)

    百分号(%)代表零个、一个或多个数字或字符。下划线(_)代表一个单一的数字或字符。这些符号可以被组合使用。

    语法

    % 和 _ 的基本语法如下:

    
    
    SELECT FROM table_name
    WHERE column LIKE 'XXXX%'
    
    or 
    
    SELECT FROM table_name
    WHERE column LIKE '%XXXX%'
    
    or
    
    SELECT FROM table_name
    WHERE column LIKE 'XXXX_'
    
    or
    
    SELECT FROM table_name
    WHERE column LIKE '_XXXX'
    
    or
    
    SELECT FROM table_name
    WHERE 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_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 '????'

    您可以使用 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 结尾的任意值


  • 相关阅读:
    Hybrid App(二)Cordova+android入门
    Hybrid App(一)App开发选型
    redis(一)Windows下安装redis服务、搭建redis主从复制
    玩转Nuget服务器搭建(三)
    玩转Nuget服务器搭建(二)
    玩转Nuget服务器搭建(一)
    Topshelf+Quartz.net+Dapper+Npoi(二)
    MySQL练习
    用过哪些SpringBoot注解
    Java 将数据写入全路径下的指定文件
  • 原文地址:https://www.cnblogs.com/wugu-ren/p/6119349.html
Copyright © 2011-2022 走看看