DECLARE
v_begin_time DATE;
v_end_time DATE;
BEGIN
v_begin_time := sysdate;
CREATE TABLE tbl_tmp TABLESPACE temp
AS
SELECT * FROM tbl_user
WHERE tbl_user.uid > 2000;
v_end_time := sysdate;
SELECT ROUND(TO_NUMBER(v_end_time - v_begin_time) * 24 * 60, 2) FROM DUAL;
END;为什么会报错? 有语法错误么?ORA-06550: line 6, column 5:
PLS-00103: Encountered the symbol "CREATE" 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-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
select 语句在过程中必须匹配into
2 v_begin_time DATE;
3 v_end_time DATE;
4 BEGIN
5 v_end_time := sysdate;
6 SELECT ROUND(TO_NUMBER(v_end_time - v_begin_time) * 24 * 60, 2) FROM DUAL;
7 END;
8 /
DECLARE
v_begin_time DATE;
v_end_time DATE;
BEGIN
v_end_time := sysdate;
SELECT ROUND(TO_NUMBER(v_end_time - v_begin_time) * 24 * 60, 2) FROM DUAL;
END;
ORA-06550: 第 7 行, 第 5 列:
PLS-00428: 在此 SELECT 语句中缺少 INTO 子句
SQL>