首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

mysql存储过程转向oracle存储过程

2013-03-26 
mysql存储过程转为oracle存储过程在mysql中有这样两个表:create table table1{a int primary key auto_inc

mysql存储过程转为oracle存储过程
在mysql中有这样两个表:
create table table1{
   a int primary key auto_increment,
   b int,
   c int
}

create table table2{
   idx  int primary key auto_increment,
   col1 int,
   col2 int,
   col3 float
}
mysql存储过程如下(主要部分):
insert into table2(col1,col2,col3) select a,sum(b),avg(c) from table1 where a<100 group by (a);
如何转换为oracle存储过程或函数
[解决办法]
int 改为number float改为number(a,b)
insert语句不用改
[解决办法]
主键自增的  在oracle里 你的建一个序列  然后把序列的值往表里insert
另外序列是存在跳号的   有可能不联系  但是能保证唯一
[解决办法]
create procedure pro_mysql as

begin
insert into table2(idx,col1,col2,col3) select seq.nextval, a,sum(b),avg(c) from table1 where a<100 group by (a);
--commit;
end;

热点排行