1.DB2自增主鍵
create table DB2_ZZZJ
(T_ID bigint primary key not null generated by default as identity(start with 1 increment by 1),
T_CHAR char(50),
T_VARCHAR varchar(50)
);
自增主鍵表插數據
--/
CREATE PROCEDURE insert_DB2_ZZZJ()
BEGIN
DECLARE MyCounter integer;
SET MyCounter =1;
WHILE MyCounter <= 100 do
insert into DB2_ZZZJ(T_CHAR,T_VARCHAR) values('aaa','bbb');
commit;
SET MyCounter = MyCounter +1;
END WHILE;
END
/
call insert_DB2_ZZZJ;
drop procedure insert_DB2_ZZZJ;
2.DM自增主鍵
create table DM_ZZZJ
(T_ID bigint IDENTITY(1,1) not null,
T_CHAR char(12) null,
T_VARCHAR varchar(12) null,
PRIMARY KEY(T_ID)
);
自增主鍵表插數據
BEGIN
FOR V_count IN 1..10 LOOP
INSERT INTO DM_ZZZJ(T_CHAR,T_VARCHAR) VALUES(V_count,V_count);
end loop;
commit;
end;
/
3.mysql自增主鍵表
create table T_MYSQL_ZZZJ
(T_ID bigint not null primary key auto_increment,
T_CHAR char(50)
)engine=innodb;
自增主鍵表插數據
create PROCEDURE instance()
BEGIN
DECLARE i int DEFAULT 1;
START TRANSACTION;
WHILE i<11 DO
INSERT INTO T_MYSQL_ZZZJ(T_CHAR) VALUES('杭州');
4.Oscar 自增主鍵表
Oscar數據庫自帶自增數據類型——serial和bigserial
需要注意的是,創建表時必須將自增數據類型字段放置到最後,這樣可以全表插數據,而不需一一列出需要插數據的字段。
create table OSCAR_ZZZJ
(T_ID bigint not null,
T_SERIAL serial not null,
CONSTRAINT TBL_OSCAR_ZZZJ_PEKY PRIMARY KEY(T_SERIAL)
);
自增主鍵表插數據
BEGIN
FOR V_count IN 1..11 LOOP
INSERT INTO OSCAR_ZZZJ VALUES(V_count);
commit;
END LOOP;
END;
/
5.SQL自增主鍵表
create table SQL_ZZZJ
(T_ID numeric(20) not null IDENTITY(1,1),
T_CHAR char(20) COLLATE Chinese_PRC_CI_AS not null,
primary key(T_ID)
);
自增主鍵表插數據
DECLARE @Temp Int
SET @Temp =1
WHILE @Temp <=10
BEGIN
INSERT INTO SQL_ZZZJ(T_CHAR) VALUES(@Temp)
SET @Temp=@Temp +1
END
6.Sybase自增主鍵表
create table SYB_ZZZJ
(T_ID bigint identity not null,
T_CHAR char(50),
primary key(T_ID)
);
自增主鍵表插數據
declare @a1 int
declare @b1 int
set @a1 = 0 while @a1<1
begin
waitfor delay '00:00:01'
set @b1=1 while @b1<=100
begin
INSERT INTO SYB_ZZZJ(T_CHAR) VALUES('杭州')
set @b1= @b1+1
end
set @a1=@a1+1
end
create table GBASE_ZZZJ
(T_ID bigint primary key AUTO_INCREMENT,
T_CHAR char(10)
);
自增主鍵表插數據
DELIMITER
CREATE PROCEDURE pro_gbase_zzzj()
BEGIN
DECLARE v_id INT DEFAULT 2;
DECLARE i INT DEFAULT 0;
WHILE i<10 do
insert into GBASE_ZZZJ(T_CHAR) values (v_id);
set i=i+1;
set v_id=v_id+1;
end while;
8.Greenplum自增主鍵
create table GREENPLUM_ZZZJ
(
t_bigint serial,
t_char char(20),
t_bigserial bigserial,
primary key(t_bigint)
);
自增主鍵表插數據
create FUNCTION fun_greenplum() RETURNS BIGINT as $$
DECLAREv_id bigint:=2;
BEGIN
for i in 1..10 loop
insert into GREENPLUM_ZZZJ(t_char,t_bigserial) values(('a!我'||v_id),v_id);
v_id :=v_id+1;
end loop;
return v_id;
end;
$$ LANGUAGE plpgsql;
select fun_greenplum()
9.kingbase自增主鍵
create table KINGBASE_ZZZJ(
t_bigint bigint identity(1,1),
t_char char(10),
primary key(t_bigint)
);
自增主鍵表插數據
create procedure pro_kingbase_zzzj() as
declare
v_id integer :=2;
begin
for i in 1..10 loop
insert into KINGBASE_ZZZJ(t_char) values(concat('a!我',v_id));
v_id :=v_id+1;
end loop;
end;
call pro_kingbase_zzzj()
10.Postgres自增主鍵
create table POSTGRES_ZZZJ(
t_serial serial,
t_bigserial bigserial,
t_char char(10)
primary key(t_serial)
);
create FUNCTION fun_postgres_zzzj() RETURNS BIGINT as $$
DECLARE
v_id BIGINT :=2;
BEGIN
for i in 1..10 loop
insert into postgres_zzzj(t_bigserial,t_char) values(v_id,concat('a!我',v_id));
v_id :=v_id+1;
end loop;
RETURN v_id;
end;
$$ LANGUAGE plpgsql;
select fun_postgres_zzzj()