diff --git "a/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.14\347\264\242\345\274\225.md" "b/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.14\347\264\242\345\274\225.md" new file mode 100644 index 0000000000000000000000000000000000000000..5d1795f2b888ef698c65b8545aea331857ef4ba9 --- /dev/null +++ "b/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.14\347\264\242\345\274\225.md" @@ -0,0 +1,41 @@ +### 创建索引 + +```sql +CREATE INDEX indexName ON table_name (column_name) +``` + +### 修改表结构(添加索引) + +```sql +ALTER table tableName ADD INDEX indexName(columnName) +``` + +### 创建表的时候直接指定 + +```sql +CREATE TABLE mytable( + +ID INT NOT NULL, + +username VARCHAR(16) NOT NULL, + +INDEX [indexName] (username(length)) + +); +``` + +有四种方式来添加数据表的索引: + +ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): + + + +该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL。 + + + +ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。 + +ALTER TABLE tbl_name ADD INDEX index_name (column_list): 添加普通索引,索引值可出现多次。 + +ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):该语句指定了索引为 FULLTEXT ,用于全文索引。 \ No newline at end of file diff --git "a/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.15\350\247\206\345\233\276.md" "b/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.15\350\247\206\345\233\276.md" new file mode 100644 index 0000000000000000000000000000000000000000..33bb5ee10187b9e82e93fee7fa5d1fafff1c389a --- /dev/null +++ "b/44 \350\264\272\346\231\213\345\215\223/\347\254\224\350\256\260/9.15\350\247\206\345\233\276.md" @@ -0,0 +1,45 @@ +视图(View)只不过是通过相关的名称存储在数据库中的一个 SQLite 语句。视图(View)实际上是一个以预定义的 SQLite 查询形式存在的表的组合。 + +视图(View)可以包含一个表的所有行或从一个或多个表选定行。视图(View)可以从一个或多个表创建,这取决于要创建视图的 SQLite 查询。 + +视图(View)是一种虚表,允许用户实现以下几点: + +1.用户或用户组查找结构数据的方式更自然或直观。 + +2.限制数据访问,用户只能看到有限的数据,而不是完整的表。 + +3.汇总各种表中的数据,用于生成报告。 + +## 创建视图 + +SQLite 的视图是使用 **CREATE VIEW** 语句创建的。SQLite 视图可以从一个单一的表、多个表或其他视图创建。 + +CREATE VIEW 的基本语法如下: + +```sql +CREATE [TEMP | TEMPORARY] VIEW view_name AS +SELECT column1, column2..... +FROM table_name +WHERE [condition]; +``` + +下面是一个从 COMPANY 表创建视图的实例。视图只从 COMPANY 表中选取几列: + +```sql +sqlite> CREATE VIEW COMPANY_VIEW AS +SELECT ID, NAME, AGE +FROM COMPANY; +``` + +可以查询 COMPANY_VIEW,与查询实际表的方式类似。下面是实例: + +```sql +sqlite> SELECT * FROM COMPANY_VIEW; +``` + +## 删除视图 + +```sql +sqlite> DROP VIEW view_name; +``` +