易截截图软件、单文件、免安装、纯绿色、仅160KB

Mysql,SqlServer,Oracle主键自动增长的设置


Mysql,SqlServer,Oracle主键自动增长的设置
1、把主键定义为自动增长标识符类型
在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值。例如:
create table customers(id int auto_increment primary key not null, name varchar(15));
insert into customers(name) values("name1"),("name2");
select id from customers;
以上sql语句先创建了customers表,然后插入两条记录,在插入时仅仅设定了name字段的值。最后查询表中id字段,查询结果为:
id
1
2
由此可见,一旦把id设为auto_increment类型,mysql数据库会自动按递增的方式为主键赋值。
在MS SQLServer中,如果把表的主键设为identity类型,数据库就会自动为主键赋值。例如:
create table customers(id int identity(1,1) primary key not null, name varchar(15));
insert into customers(name) values("name1"),("name2");
select id from customers;
查询结果和mysql的一样。由此可见,一旦把id设为identity类型,MS SQLServer数据库会自动按递增的方式为主键赋值。identity包含两个参数,第一个参数表示起始值,第二个参数表示增量。
2、从序列中获取自动增长的标识符
在Oracle中,可以为每张表的主键创建一个单独的序列,然后从这个序列中获取自动增加的标识符,把它赋值给主键。例如一下语句创建了一个名为customer_id_seq的序列,这个序列的起始值为1,增量为2。
create sequence customer_id_seq increment by 2 start with 1
一旦定义了customer_id_seq序列,就可以访问序列的curval和nextval属性。
curval:返回序列的当前值
nextval:先增加序列的值,然后返回序列值
以下sql语句先创建了customers表,然后插入两条记录,在插入时设定了id和name字段的值,其中id字段的值来自于customer_id_seq序列。最后查询customers表中的id字段。
create table customers(id int primary key not null, name varchar(15));
insert into customers values(customer_id_seq.curval, "name1"),(customer_id_seq.nextval, "name2");
select id from customers;
如果在oracle中执行以上语句,查询结果为:
id
1
3
http://blog.csdn.net/andyelvis/archive/2008/05/14/2446865.aspx


相关文档:

ORACLE 行列转换通用存储过程,已经转换的MSSQL版本

下面是ORACLE行列转换通用存储过程:
1、
Function Fun_Split_Str(p_Str Varchar2, p_Division Varchar2, p_Seq Int)
    Return Varchar2 Is
    v_First Int;
    v_Last  Int;
  Begin
    If p_Seq < 1 Then
   &nbs ......

Oracle 用户及角色 介绍


.
用户管理
1.1
建立用户(数据库验证)
    
CREATE
 
USER
  
DAVE  
IDENTIFIED 
BY
  
pwd
    
DEFAULT
TABLESPACE 
users
    
TEMPORARY
  
TABLESPACE  ......

Oracle 服务进程 简单介绍

Oracle 服务进程-简单介绍
以Orcale10g的版本为例,简单介绍下Oracle的服务进程(Windows版本) -ganlan。
 
1、OracleCSService
  进程:ocssd.exe
介绍:Cluster Synchronization Services (CSS)—Manages the cluster configuration by controlling which nodes are members of the cluster an ......

java jdbc 调用 oracle存储过程 返回游标

1.创建测试表
create table users(
userid int primary key,
username varchar2(20),
userpwd  varchar2(20)
);
insert into users values(1,'test','test');
insert into users values(2,'test','test');
insert into users values(3,'test','test');
insert into users values(4,'test','test');
insert i ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号