--创建自动增长列
create sequence emp_sequence
increment by 1----每次增加几个
minvalue 1----最小值为1
nomaxvalue----不限制最大值
start with 1----从1开始
cache 10----缓存
order;
--问题类型表
create table questionType(
qid int primary key,
typename varchar2(200) not null)
procedure InsertUser(uname in varchar2,upass in varchar2,zname in varchar2 ,sex in varchar2,company in varchar2,dept in varchar2,job in varchar2,telephone in varchar2,Email in varchar2,MSN in varchar2,QQ in varchar2,resultvalue out testCursorType)
is
sqlstr varchar2(200);
begin
sqlstr:='insert into usersyan values(';
sqlstr:=sqlstr||emp_sequence.nextval||','||uname||','||upass||','||zname||','||sex||','||company||','||dept||','||job||','||telephone||','||Email||','||MSN||','||QQ||')';
execute immediate sqlstr;
commit;
end;我创建了一个自动增长列,想用存储过程来添加数据,但是把自动增长列作为参数添加编译不通过,这是怎么回事呢?
如果我直接用sql语句则会成功
create sequence emp_sequence
increment by 1----每次增加几个
minvalue 1----最小值为1
nomaxvalue----不限制最大值
start with 1----从1开始
cache 10----缓存
order;
--问题类型表
create table questionType(
qid int primary key,
typename varchar2(200) not null)
procedure InsertUser(uname in varchar2,upass in varchar2,zname in varchar2 ,sex in varchar2,company in varchar2,dept in varchar2,job in varchar2,telephone in varchar2,Email in varchar2,MSN in varchar2,QQ in varchar2,resultvalue out testCursorType)
is
sqlstr varchar2(200);
begin
sqlstr:='insert into usersyan values(';
sqlstr:=sqlstr||emp_sequence.nextval||','||uname||','||upass||','||zname||','||sex||','||company||','||dept||','||job||','||telephone||','||Email||','||MSN||','||QQ||')';
execute immediate sqlstr;
commit;
end;我创建了一个自动增长列,想用存储过程来添加数据,但是把自动增长列作为参数添加编译不通过,这是怎么回事呢?
如果我直接用sql语句则会成功
解决方案 »
- 设置oracle ODBC的NLS_LANG
- oracle更新问题
- 急啊,谁能帮帮我,XML解析问题.
- 新手菜鸟问题:如何把ORACLE数据表导出到WORD或者EXCEL中?在线等..
- oracle要怎么样设置才能不输密码而用sysdba登陆?
- 内网的ORACLE怎样实现和外部的ORACLE数据库同步??
- oracle序列是不是只能够在存储过程中使用啊?
- 通过OEM不能登陆
- 数据库设计过程中 建模 是否是绝对必要的?那个产品最好用!
- 求救!为什么在windwos2000server不能安装oracle9i,我在线等待回复!!那位大哥帮忙
- oracle监听的服务器IP是如何确定的?
- 如何执行文件
create or replace procedure InsertUser(uname in varchar2,upass in varchar2,zname in varchar2,
sex in varchar2,company in varchar2,dept in varchar2,
job in varchar2,telephone in varchar2,Email in varchar2,
MSN in varchar2,QQ in varchar2,resultvalue out testCursorType)
is
sqlstr varchar2(200);
qid number;
begin
select emp_sequence.nextval
into qid
from dual;
sqlstr:='insert into usersyan values(';
sqlstr:=sqlstr||to_char(qid)||','||uname||','||upass||','||zname||','||sex||','||company||','||dept||','||job||','||telephone||','||Email||','||MSN||','||QQ||')';
execute immediate sqlstr;
commit;
end;