17,377
社区成员
发帖
与我相关
我的任务
分享
--注意命名块(存储过程)和未命名块的区别
已写入 file afiedt.buf
1 BEGIN
2 insert into test values(2);
3 COMMIT;
4* END;
scott@YPCOST> /
PL/SQL 过程已成功完成。
scott@YPCOST> select * from test;
TOTAL_NUMBER
------------
1
2
scott@YPCOST> create table test(TOTAL_NUMBER number);
表已创建。
scott@YPCOST> CREATE OR REPLACE PROCEDURE testProcedure AS
2 BEGIN
3 insert into test values(1);
4 COMMIT;
5 END;
6 /
过程已创建。
scott@YPCOST> exec testProcedure; --你是不是没有调用这个过程啊
PL/SQL 过程已成功完成。
scott@YPCOST> select * from test;
TOTAL_NUMBER
------------
1
--没问题啊
Connected to:
Oracle Database 10g Release 10.1.0.2.0 - Production
SQL> DROP TABLE test;
Table dropped.
SQL> CREATE TABLE test(id number);
Table created.
SQL>
SQL> CREATE OR REPLACE PROCEDURE testProcedure AS
2 BEGIN
3 insert into test values(1);
4 COMMIT;
5 END;
6 /
Procedure created.
SQL> EXEC testProcedure;
PL/SQL procedure successfully completed.
SQL> SELECT * FROM test;
ID
----------
1
SQL>