注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

郭鹏飞 廊坊师范学院信息技术提高班十四期

 
 
 

日志

 
 

NO.4数据库的高级设计  

2017-05-17 16:57:29|  分类: SQL入门经典 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1.标准化(分为范式)

1)第一范式:

a.可删除重复的数据;

b.可划分数据,只删除其中一项。

c.为每个表创建一个主键——将发生作用。

2)第二范式:要求主键中的任意列必须没有局部相关性。

3)第三范式:符合第二范式、所有非主键字段都依赖于主键。

2.利用约束确保数据的有效性

1NOT NULL约束

2UNIQUE约束:防止一个特定的列中两个记录具有一致的值。

注意:可以对一个表添加多个约束,只要每个约束具有一个不同的名称,并且用逗号隔开。

eg:将MYUniqueConstraint约束加到YetAnotherTable表中。

CREATE TABLE YetAnotherTable

(

Column1 int,

Column2 varchar(20)

Column3 varchar(12)

);

ALTER TABLE YetAnotherTable

ADD CONSTRSINT MyuniqueConstraint _UNIQUE (Column2,Column3);

若使用DB2数据库:    

CREATE TABLE YetAnotherTable

(

Column1 int,

Column2 varchar(20) NOT NULL,

Column3 varchar(12) NOT NULL,

);

ALTER TABLE YetAnotherTable

ADD CONSTRSINT MyuniqueConstraint _UNIQUE (Column2,Column3);

3CHECK约束

4)主键和PRIMARY KEY 约束:都具有唯一性。

注意:仅在DB2中,NOT NULL约束必须严格跟在主键列的后面,但是即使没有NOT NULL,在其他的数据库系统中,这些代码也可以被执行。

5)外键:用于访问另外一个表中主键的列。

3.利用索引加速结果查询

1)需要创建CREATE INDEX语句。

2IBM DB2不支持在创建表后再添加NOT NULL,需要将数据复制到一个临时表中,删除MemberDetails表,然后重新创建具有NOT NULL约束的表。

  评论这张
 
阅读(12)| 评论(6)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017