# 数据库笔记 **Repository Path**: zhangdingqu/database_notes ## Basic Information - **Project Name**: 数据库笔记 - **Description**: 记录数据库语法的笔记 - **Primary Language**: SQL - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-01 - **Last Updated**: 2021-02-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Sqlite3数据库笔记 #### 介绍 记录数据库语法的笔记 ## 连接数据库 ```sql # 0、连接到文件 db_file ='scores.db' # 1、获取连接 conn = sqlite3. connect(db_file) # 2、打开游标cursor cur = conn. cursor() # 3、插入SQL语句 ``` ## 创建一张表 ```sql CREATE TABLE "score" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE, "name" TEXT NOT NULL, "年龄" INTEGER NOT NULL, "性别" TEXT NOT NULL, "成绩" INTEGER NOT NULL ); id 整数类型 不能为null 作为主键 自动增长 约束唯一 ``` | 约束 | 描述 | |---|---| |NOT NULL|不能为空| |PRIMARY KEY|主键| |AUTOINCREMENT|自动增长| |UNIQUE|约束唯一标识| | 存储类 | 描述 | | ------ | ---- | | NULL | 值是一个 NULL 值。 | | INTEGER | 值是一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中。 | | REAL | 值是一个浮点值,存储为 8 字节的 IEEE 浮点数字。 | | TEXT | 值是一个文本字符串,使用数据库编码(UTF-8、UTF-16BE 或 UTF-16LE)存储。 | | BLOB | 值是一个 blob 数据,完全根据它的输入存储。 | SQLite 的存储类稍微比数据类型更普遍。INTEGER 存储类,例如,包含 6 种不同的不同长度的整数数据类型。| | id | name | 年龄 | 成绩 | | ---- | ---- | ---- | ---- | |1 |张定取 |30 |男 |100| |2 |航三 |30 |男 |99| |4 |王梅 |30 |女 |99| |5 |张三 |35 |男 |99| |7 |张三 |35 |男 |99| |9 |张三 |35 |男 |99| |11 |张三 |35 |男 |99| |13 |张三 |35 |男 |99| |15 |Jack |80 |男 |90| |16 |Bob |75 |男 |95| |17 |Rose |60 |女 |70| |18 |Sunny |96 |女 |96| |19 |Ada |79 |女 |98| |20 |张三 |50 |男 |80| |21 |胖妞 |26 |女 |86| |22 |张三 |50 |男 |80| |23 |胖妞 |26 |女 |86| |24 |张三 |50 |男 |80| |25 |胖妞 |26 |女 |86| ### 查找列表中包含姓张的数据 * SQLite 的 LIKE 运算符是用来匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1。这里有两个通配符与 LIKE 运算符一起使用: * 百分号 (%) * 下划线 (_) * 百分号(%)代表零个、一个或多个数字或字符。下划线(_)代表一个单一的数字或字符。这些符号可以被组合使用。 ### 查找列表中包含姓张的数据 ```sql select * from score where name like "张%" ```