网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  唯一性约束     
  文章作者:未知  文章来源:水木森林  
  查看:104次  录入:管理员--2007-11-17  
 
所谓唯一性约束(unique constraint)不过是数据表内替代键的另一个名称而已。替代键(alternate key)可以是数据表内不作为主键的其他任何列,只要该键对该数据表唯一即可。换句话说,在唯一列内不允许出现数据重复的现象。比方说,你可以用车辆识别代号(vin)作为汽车(automobile)数据表的替代键,在汽车数据表里,主键是汽车识别号(automobile identification),这是一种由系统自动生成的id。你可以在汽车表内对vin施加唯一性约束,同时再创建一个需要vin的表。在这个新表内可以声明外键指向汽车表。这样,只要汽车表内有vin输入数据库就会检验vin输入结果。这就是保证数据库内数据完整性的另一种有效的措施。

以下是演示唯一性约束作为外键引用点的示例代码:

create table parent
(parent_idint not null, -- primary key
parent_alternate_keyint not null, -- alternate key
parent_col1 int null,
parent_col2 int null,
constraint pk_parent_id primary key (parent_id),
constraint ak_parent_alternate_key unique (parent_alternate_key)
)
go
insert parent values ( 1, 10, 150, 151)
insert parent values ( 2, 11, 122, 271)
insert parent values ( 3, 12, 192, 513)
insert parent values ( 4, 13, 112, 892)
go
create table child2
(child2_parent_id int not null, -- primary key/foreign key
child2_id int not null, -- primary key
child2_col1 int null,
child2_parent_alternate_key int not null, -- foreign key
constraint pk_child2 primary key (child2_parent_id, child2_id),
constraint fk_child2_parent foreign key (child2_parent_id) _
references dbo.parent(parent_id),
constraint fk_ak_child2_parent foreign key (child2_parent_alternate_key) references dbo.parent(parent_alternate_key)
)
go
insert child2 values (1,1,34,10)
insert child2 values (1,2,34,13)
insert child2 values (1,3,34,11)
go
insert child2 values (1,4,34,23) -- this one will fail
go
 
 
上一篇: 为什么要自己写底层涵式?    下一篇: 我所认识的apache
  相关文档
继承“protected” 11-17
java基础学习: 常用ant的操作 (代码) 11-16
再谈客户端的 java 技术 11-16
java高级编程:java语言的网络功能与编程 11-16
用j2me为手机diy一个顶牛牛游戏 11-17
java新手入门——整理的scjp听课笔记 11-17
如何设计出具有gui特色的“纯”java程序 11-17
hibenate持久化技术中多对多关系的应用 01-31
用javahelp系统开发和交付更好的文档 11-16
java绘制一个成交量的统计图 11-17
给经理们的.net讲座 11-17
数据库相关--一篇关于优化sql的文章 01-25
请不要做浮躁的人 11-17
可扩展的java应用程序开发模式 11-16
提升jsp中页面响应速度的七大秘籍绝招 11-16
java的数据库应用 11-17
一个记事本的源程序 11-17
无需调优的内存优化 11-17
java程序员必须了解的七大开源协议 03-19
关于java中连接各类数据库的代码及其补充说明 11-17
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息