惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
The Cloudflare Blog
D
DataBreaches.Net
J
Java Code Geeks
G
Google Developers Blog
L
LangChain Blog
N
Netflix TechBlog - Medium
Stack Overflow Blog
Stack Overflow Blog
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
小众软件
小众软件
量子位
Apple Machine Learning Research
Apple Machine Learning Research
P
Proofpoint News Feed
博客园_首页
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog
腾讯CDC

博客园 - 张谊

[转]ubuntu下 手动安装 LAMP 和 JAVA环境 [转]ViewState的使用 [转]Working with user roles and permissions in SharePoint Object Model [原]SharePoint文档库上传文档 [原]SharePoint列表与文档库EventHandeler [转]ASP.NET缓存概念及其应用浅析 window.showModalDialog以及window.open用法简介 [原]欢迎加入QQ群 [原]如何在Silverlight中使用WebService绑定DataGrid [转]Silverlight中调用远程Web Service的权限问题 [转]BeanUtils接口和类 [原]Commons- BeanUtils学习笔记 [转]Apache+Tomcat负载均衡及Session绑定的实现 [原]基于Caché多维数据库的SSH实现 [原]关于支付宝API开发的一点心得 [原]Java反射示例 [原]JavaSocket实现广播聊天室 [转]翻译 一些很酷的.Net技巧 《生命如一泓清水》
[原]Oracle中列自增的方法
张谊 · 2008-09-15 · via 博客园 - 张谊

如何在Oracle中设计类似SQLServer中某列按某种方式自增长?

其实很简单,在Oracle中,没有类似Identity(1,1)这样的自增长方式,如果需要设置某列按照某种方式自增长,那么需要“重写”Oracle中sequence,在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方,首先需要明白squence能用到的地方:

-------------------------------------------

可以使用sequence的地方:
- 不包含子查询、snapshot、VIEW的 SELECT 语句
- INSERT语句的子查询中
- NSERT语句的VALUES中
- UPDATE 的 SET中
-------------------------------------------

创建一张表:


create table test(
id
int not null primary key,
name
varchar2(20),
sex
int)
;

-------------------------------------------

现在“重写”squence


create sequence t ->创建squence,命名为t
minvalue
1 ->最小值
maxvalue
100000 ->最大值
start
with 1 ->从1开始
increment
by 1 ->增长比例
nocache
->增长池,为了提高效率,可以设置为 cache 10
;

-------------------------------------------

插入数据:


insert into test values(t.nextval,'zhangyi'23);

-------------------------------------------

这样就实现了以前在SQLServer中设置Identity(1,1)这样的增长方式了,看上去比较麻烦,实际上做起来还是挺容易的!~

另外,如果想修改squence,直接Alter它就可以了,删除同样是Drop。

--------------------------------------------

另外:搞了几天的Oracle了,唯一的感觉是非常的庞大,今天下的电子书看了一半,感觉还不错,明天继续,看完总算能闻闻Oracle的味道了,呵呵!~下次争取写一个常用Oracle命令,还有这几天在安装Oracle,启动Oracle监听过程中的一些解决办法,与大家一起讨论,晚安!