CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  开发

请问大侠:怎样在数据库中产生一个唯一列值!

楼主xiaohei()2004-05-04 15:27:59 在 Oracle / 开发 提问

怎样在数据库中产生一个唯一列值!  
  我打算向数据库中批量导入数据,现在需要一个唯一主键列,怎么完成 问题点数:0、回复次数:10Top

1 楼welyngj(无爱)回复于 2004-05-04 15:34:15 得分 0

序列用来自动产生唯一ID。  
  如果在触发器中得用序列,在插入时可以不管ID,有触发器自动执行。  
  如果用语句插入也行,就像   insert   into   table_name(id,name,...)   values(seq_name.nextval,'name',..);  
  一般就这两种用法:  
  1.创建sequence  
  create   sequence   seq_name  
  minvalue   1  
  maxvalue   999999999999999999  
  start   with   1  
  increment   by   1  
  cache   20;  
  可以直接在插入时调用seq_name.nextval;  
  如insert   into   table_name(proid)   values(seq_name.nextval);  
   
  2.创建触发器(同时要创建sequence):  
  create   or   replace   trigger   trg_name  
  before   insert   on   table_name  
  for   each   row  
  begin  
  select   seq_name.nextval   into   :new.proid   from   dual;  
  end;  
  /  
   
  Top

2 楼baojianjun(包子)回复于 2004-05-04 15:57:08 得分 0

http://expert.csdn.net/Expert/topic/3029/3029266.xml?temp=.9723169Top

3 楼xiaohei()回复于 2004-05-04 16:24:03 得分 0

大侠,除了序列有没有其他方法。Top

4 楼welyngj(无爱)回复于 2004-05-04 16:26:40 得分 0

我还没有发现其他的方法。Top

5 楼drabit(square)回复于 2004-05-04 19:15:07 得分 0

用rownum,不过要导入完成以后做updateTop

6 楼lvjack(追逐梦想)回复于 2004-05-05 10:18:31 得分 0

除了序列可以自己在语句中生成唯一id再insert  
   
  或者根据你要导入的数据,选择其中一个字段作主键列,先建表再导入Top

7 楼snowy_howe(天下有雪)回复于 2004-05-05 10:23:41 得分 0

以上所说,根据你要导入的数据,如果实在找不出任何组合可以做主键,  
  不妨自己设置一个字段,该字段没有实在意义,就是标识唯一记录。Top

8 楼skystar99047(天星)回复于 2004-05-05 17:45:14 得分 0

不知道你想要完成什么功能要用到唯一ID,导入数据一定要吗?还可以考虑一下rownum的用法。Top

9 楼baojianjun(包子)回复于 2004-05-05 18:25:29 得分 0

樓主為什麼不想用序列呢?是不是有什麼特殊的要求?Top

10 楼beckhambobo(beckham)回复于 2004-05-06 00:12:11 得分 0

oracle就是为唯一而设计出序列对象Top

相关问题

  • 服务器端建的数据库唯一列值对PB的影响
  • 数据库中唯一值的问题?请教
  • !!!!!请问如何读取数据库中某列的最大值?????
  • !!!!!请问如何读取数据库中某列的最大值?????
  • 如何用一个值与数据库的列进行比较?
  • 怎样将数据库中1列值读入combox中
  • 从数据库中查询出ComboBox1下拉列表中的值
  • 想随机的选取数据库列中的一个值?
  • access数据库能否实现两列的值一样?
  • 动态关联下拉列表,要求列表值从数据库中提取

关键词

  • 数据库
  • 字段
  • 数据
  • 唯一
  • 导入
  • 触发器
  • 序列
  • nextval
  • seq
  • 插入

得分解答快速导航

  • 帖主:xiaohei

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo