SQL——CREATEALTERDROP和VIEW
Posted 相遇总有原因 不是恩赐就是教训
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL——CREATEALTERDROP和VIEW相关的知识,希望对你有一定的参考价值。
CREATE DATABASE - 创建新数据库
语法:CREATE DATABASE database_name
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
语法:CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
部分数据类型:
decimal(size,d)、numeric(size,d) -- 容纳带有小数的数字。"size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。
char(size) -- 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
varchar(size) -- 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
date(yyyymmdd) -- 容纳日期。
CREATE INDEX - 创建索引,索引使数据库应用程序可以更快地查找数据。只能被用来加速搜索/查询。
注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。
语法
在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX indexName tableName (columnName)
注释:"columnName" 规定需要索引的列。
创建一个唯一的索引。唯一的索引表示两个行不能拥有相同的索引值。
CREATE UNIQUE INDEX indexName ON tableName (columnName)
示例:
1.CREATE INDEX PersonIndex ON Person (col1 DESC) -- 以降序索引某个列中的值
2.CREATE INDEX PersonIndex ON Person (col1, col2) -- 索引不止一个列
DROP
1.DROP INDEX -- 删除表格中的索引。
MicrosoftSQLJet/Microsoft Access:DROP INDEX index_name ON table_name
SQLServer:DROP INDEX table_name.index_name
IBM DB2/Oracle:DROP INDEX index_name
mysql:ALTER TABLE table_name DROP INDEX index_name
2.DROP TABLE -- 删除表(表的结构、属性以及索引也会被删除):
DROP TABLE 表名称
3.DROP DATABASE -- 删除数据库:
DROP DATABASE 数据库名称
4.TRUNCATE TABLE -- 删除表格中的数据
TRUNCATE TABLE 表名称 -- 仅仅删除表格中的数据
ALTER TABLE -- 用于在已有的表中添加、修改或删除列。
1.添加列:ALTER TABLE tableName ADD coumnName datatype
2.删除列:ALTER TABLE tableName DROP COLUMN coumnName
注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN coumnName)。
3.修改表中列的数据类型:ALTER TABLE tableName ALTER COLUMN coumnName datatype
VIEW - 视图
在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。视图包含行和列,就像一个真实的表。视图中的字段来自一个或多个数据库中的真实的表中的字段。可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,也可以提交数据,就像这些来自于某个单一的表。
注释:数据库的设计和结构不会受到视图中的函数、where 或 join 语句的影响。
CREATE VIEW 语法: CREATE VIEW viewName AS SELECT columnName(s) FROM tableName WHERE condition
注释:视图总是显示最近的数据。每当用户查询视图时,数据库引擎通过使用 SQL 语句来重建数据。
SQL 更新视图: CREATE OR REPLACE VIEW viewName AS SELECT columnName(s) FROM tableName WHERE condition
SQL 撤销视图: DROP VIEW viewName
以上是关于SQL——CREATEALTERDROP和VIEW的主要内容,如果未能解决你的问题,请参考以下文章