易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle的分号和斜杠/ - Oracle / 基础和管理

引用
1. Adding a slash to the end of each statement was a bad choice because sqlplus treats slash as a buffer flush. For procedure/triggers/functions it is a must: because content of if is stored in the buffer and is not executed. However, for all other statements it means executing the same statement twice because such statement is executed immediately and put into buffer and following slash just re-executes the same statement.


我的理解是,对一些block,比如declare, begin end ,create procedure之类的,'/'是必须的,用来run
而一些简单statement,‘/ '会导致运行两次

问题是,直接用一个'/'就会运行两次,还是在分号之后还在下行跟着 / 才会执行两次?

另外,如果要避免重复执行的话,分号和斜杠是不是二选一就可以了,一般选哪个有啥习惯?

引用

1、放在分号后面的 / 会导致两次;sqlplus认为输入“;”表示一个语句结束
2、分号


谢谢。

再问一下
像create procedure,到最后也应该有个分号结束,然后再跟一个斜杠
对这种block的这样没问题吗?




如果是语句的话,;表示结束并且运行
如果是程序块或者pl块,;表示结束不允许,必须/表示运行

楼上的已经说的很清楚了!
;是执行语句必须的
/是执行语句块必须的


相关问答:

oracle 10g data guard - Oracle / 基础和管理

做玩data guard 后
在Primary服务器 执行 
SQL>SELECT SEQUENCE#,APPLIED from V$ARCHIVED_LOG ORDER BY SEQUENCE#;
 SEQUENCE# APP
---------- ---
  13 NO
  13 YES ......

oracle初学者你请教 - Oracle / 基础和管理

--建立一个包以定义一个游标
create or replace package PK_test 
as 
type cur_test is ref cursor;
end PK_test;
--建立一个过程,通过输入JOBID,返回一个表记录(游标)!
create or replace ......

oracle 存储过程中应用事务的问题 - Oracle / 开发

SQL code:

CREATE OR REPLACE PROCEDURE usp_refreshTopN IS
BEGIN
--文档
INSERT INTO topnresource(resourceId,title,type,cover,brief,properUser,tag,clickAmount,createDate,topNCreateDate,organizat ......

Oracle行转列 - Oracle / 高级技术

select distinct '1' t1,'2' t2,'3' t3,'4' t4 from table 查出来的结果为
1,2,3,4
我想得以下这样的效果
1
2
3
4
请问一下有什么办法可以解决???
没有好的方法,用union,一条条记录拼接

SQL code:
wi ......

关于SQL语句OR的问题 - Oracle / 高级技术

通过NAME字段条件查询一个数据表,假设我有100个姓名,有以下两个方法,
方法1:
把100个Name 组成一个SQL语句,比如 Select * from tmp_table where Name='张三' or Name ='李四' Or ...Or Name='第一百个姓名'
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号