【问题标题】:Free error syntax but it keep gives me errors (function in plsql)免费的错误语法,但它一直给我错误(plsql中的函数)
【发布时间】:2013-05-23 11:14:35
【问题描述】:

在这个函数中,我正在创建一个集合,这个函数会选择工资超出最大和最小工资范围的员工的 ID,并返回该集合中的这些 ID,我认为语法是正确的,但是它不断给我下划线:第一行(AS表)和第二行(创建),*

*错误:Type HR.ID_TABLE@HR Error(4,1): PLS-00103: Encountered the symbol "CREATE" .*


,任何想法为什么会发生这种情况。

CREATE TYPE id_table AS TABLE OF NUMBER;

CREATE OR REPLACE FUNCTION min_max RETURN id_table AS
l_emp_list id_table;
BEGIN
SELECT e.employee_id 
BULK COLLECT INTO l_emp_list
FROM employees e 
INNER JOIN jobs j ON j.job_id = e.job_id
WHERE e.salary NOT BETWEEN j.min_salary AND j.max_salary;

RETURN l_emp_list;
END;

请帮忙,我可以解决它。谢谢

【问题讨论】:

  • 好吧,如果您显示错误,那真的很有帮助,不是吗?
  • 尝试在创建类型后添加/
  • 如果您需要帮助,请显示您的错误。

标签: oracle function plsqldeveloper


【解决方案1】:

你试过了吗?

CREATE OR REPLACE TYPE id_table AS TABLE OF NUMBER;

你在哪里执行脚本?

【讨论】:

  • 你在哪里执行?如果先创建类型,然后在不同的脚本中创建函数,是否会出现相同的错误?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-09
  • 1970-01-01
相关资源
最近更新 更多