SQL语句基础2-数据定义

数据定义,就是定义数据的形式,包括定义数据库,定义表和其表现形式(数据项),数据定义涉及的定义有创建、删除和修改。


1.CREATE(创建)

创建可分为创建数据库、基本表、视图和索引四种形式,一个RDBMS中可包含多个数据库,一个数据库内可包含多个基本表和视图,基本表和视图的关系就不是简单的一对多了。索引相关在此文中先略去不讲。

首先若想使用RDBMS,必须要先创建自己的数据库吧。

create database  <数据库名>;

记得后面要有分号,当然也可以用create schema 数据库名(不过我不用,创建模式太不直观了好吗)。建好数据库后,我们来看数据库内都包含什么:


基本表(Tables)、视图(View)、存储过程(Stored Procedures)、函数(Functions)构成了整个数据库的结构,后面的文章我会对这些一一讲解。


建好数据库后需要用表来存放数据,下面创建基本表

create table <表名>(

<列名>   <数据类型>   [列级完整性约束],

[<列名>   <数据类型>   [列级完整性约束]]

...);

数据类型各RDBMS会有一些不同,使用时注意一下就好。下面看看基本表内都包含哪些东西:


数据列(Columns)、索引(Indexes)、外键(Foreign Key)、触发器(Triggers),后面要说的重点就是这里。


有时为了简化对基本表的操作,对频繁使用的某些列的组合建立一个视图。下面创建视图:

create view <视图名>  [(<列名>[,<列名>,...])]

as

<子查询>   [with check option];

子查询使用select动词实现,通常不允许使用order by子句和distinct短语。with check option表示对视图进行增、删、改时要满足子查询中的条件表达式。

下面看视图中都包含什么:


视图中包含的东西很少,只有视图表和表内的字段。视图的操作依赖于基本表,所以对视图的操作有所限制,一般也较少使用。


2.DROP(删除)

删除可以作用于数据库、基本表和视图,下面简单了解一下DROP动词。

drop database <数据库名>;

默认情况下MySQL为级联删除(即不论数据库中有无对象都执行删除操作)。

drop table <基本表名>  [RESTRICT | CASCADE];

其中CASCADE(级联)表求相关的依赖都会被一起删除,如视图;RESTRICT(限制)则不会。

drop view <视图名> [CASCADE];

删除视图,若用级联则会把由此视图导出的所有视图一并删除。


3.ALTER(修改)

基本表的修改如下:

alter table <表名>

[ add  <新列名>  <数据类型>  [完整性约束] ]

[ drop  <完整性约束>  ]

[ alter column  <列名>  <数据类型>  ];

修改包括新增列、删除约束、更改列名的数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值