首页 > 解决方案 > 未声明绑定变量

问题描述

我是 PL/SQL 的绝对初学者,我正在解决一些像这样的简单练习。为什么我会收到错误消息:

Bind Variable "RESS," is NOT DECLARED
Bind Variable "MAXX" is NOT DECLARED

我怎样才能让它工作?

VARIABLE ress VARCHAR2(35)
VARIABLE maxx INT
BEGIN
    SELECT department_name, count(*)
    INTO :ress, :maxx
    FROM employees e, departments d
      WHERE e.department_id=d.department_id
    GROUP BY department_name
    HAVING COUNT(*) = (SELECT MAX(COUNT(*))
                       FROM employees
                       GROUP BY department_id);

    END;
/
PRINT ress, maxx;

标签: sqloracleplsql

解决方案


这 ”;” 变量声明后丢失。

也许试试这样:

VARIABLE ress VARCHAR2(35);
VARIABLE maxx INT;
BEGIN
    SELECT department_name, count(*)
    INTO :ress, :maxx
    FROM employees e, departments d
      WHERE e.department_id=d.department_id
    GROUP BY department_name
    HAVING COUNT(*) = (SELECT MAX(COUNT(*))
                       FROM employees
                       GROUP BY department_id);

    END;
/
PRINT ress, maxx;

推荐阅读