/*创建一个表*/
create table emp (emp_id number (5),emp_name varchar2(20), emp_salary number(4) )
/*创建一个存储过程*/
create or replace procedure ins_table_emp(p_emp_id number,p_emp_name varchar2,p_emp_salary number)as
v_emp_id number:=p_emp_id;
v_emp_name varchar2(20):=p_emp_name;
v_emp_salary number:=p_emp_salary;
begin
insert into emp values (v_emp_id,v_emp_name,v_emp_salary);
end ins_table_emp;
/*插入数据*/
BEGIN
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;
----------------------------------------------------------------------
问题,插入时不停的报错,但是怎么看都没有问题。
请教~
create table emp (emp_id number (5),emp_name varchar2(20), emp_salary number(4) )
/*创建一个存储过程*/
create or replace procedure ins_table_emp(p_emp_id number,p_emp_name varchar2,p_emp_salary number)as
v_emp_id number:=p_emp_id;
v_emp_name varchar2(20):=p_emp_name;
v_emp_salary number:=p_emp_salary;
begin
insert into emp values (v_emp_id,v_emp_name,v_emp_salary);
end ins_table_emp;
/*插入数据*/
BEGIN
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;
----------------------------------------------------------------------
问题,插入时不停的报错,但是怎么看都没有问题。
请教~
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;这个是在啥里面执行的??你的procedure 写好后 编译了么?
然后在“命令”里面
已连接到 Oracle Database 11g Express Edition Release 11.2.0.2.0
已连接为 scott
SQL>
SQL> BEGIN
2 ins_table_emp(10000,'tian2',1200);
3 ins_table_emp(10001,'wang2',2300);
4 ins_table_emp(10002,'zhao3',3500);
5 ins_table_emp(10003,'wu1',3500);
6 ins_table_emp(10004,'feng2',3500);
7 END;
8 /BEGIN
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;ORA-06550: line 2, column 3:
PLS-00103: Encountered the symbol "" when expecting one of the following: ( begin case declare exit for goto if loop mod null pragma
raise return select update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
continue close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge pipe purge
The symbol "" was ignored.
ORA-06550: line 3, column 3:
PLS-00103: Encountered the symbol "" when expecting one of the following: ( begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-i
ORA-06550: line 4, column 3:
PLS-00103: Encountered the symbol "" when expecting one of the following: ( begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-i
ORA-06550: line 5, column 3:
PLS-00103: EncountSQL>
BEGIN
p_ins_table_emp( p_emp_id => 10000,
p_emp_name => 'tian2',
p_emp_salary => 1200);
END;
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;这个存储过程执行的有问题,
不能这么执行存储过程的
另外你这个过程有什么意义? 不就是一个Insert 吗
BEGIN
ins_table_emp(10000,'tian2',1200);
ins_table_emp(10001,'wang2',2300);
ins_table_emp(10002,'zhao3',3500);
ins_table_emp(10003,'wu1',3500);
ins_table_emp(10004,'feng2',3500);
END;--你的存储过程名称前面有全角空格,去掉再执行。