【发布时间】:2021-01-06 18:47:13
【问题描述】:
DECLARE
cursor c is
select book.bookid,book.title,publisher.publishername,
author.firstname,author.lastname from book
inner join publisher on
book.publisherid =publisher.publisherid
inner join author on book.author_id=author.authorid
order by book.title
fetch next 2 rows only;
BEGIN
dbms_output.put_line('BOOKID..TITLE..publisher..Author');
for i in c
loop
dbms_output.put_line(i.bookid||'..'||substr(i.title,1,
10)||'..'||i.publishername||'..'||i.firstname||' '||i.lastname);
end loop;
end;
/
我在“仅获取接下来的 2 行”这一行上遇到错误。你能解释一下并给我正确的解决方案吗?我只想要前 2 行。
错误- 限制 2; * 第 9 行的错误: ORA-06550:第 9 行,第 5 列: PL/SQL: ORA-00933: SQL 命令未正确结束 ORA-06550:第 3 行,第 5 列: PL/SQL:忽略 SQL 语句
【问题讨论】:
-
你遇到了什么错误?
-
您运行的是哪个版本的 Oracle?
-
究竟是什么是错误?
-
请看一下。
-
看来你不是Oracle 12c版本,这里必须使用
rownum概念。