日期:2014-05-17  浏览次数:21002 次

学习plsql遇到的一点小问题
大家好,小弟在学习plsql时遇到一点小问题,以下是问题的内容:
student表里有两列,字段为id number,name varchar(10)
SQL> DECLARE
  2  --v_eno NUMBER:=学号;
  3  v_row student%ROWTYPE;
  4  BEGIN
  5  SELECT * INTO v_row FROM student WHERE id:=11;
  6  DBMS_OUT.PUT_LINE(v_row.id||'  '||v_row.name);
  7  END;
  8  /

DECLARE
--v_eno NUMBER:=学号;
v_row student%ROWTYPE;
BEGIN
SELECT * INTO v_row FROM student WHERE id:=11;
DBMS_OUT.PUT_LINE(v_row.id||'  '||v_row.name);
END;

ORA-06550: 第 5 行, 第 42 列: 
PL/SQL: ORA-00920: 无效的关系运算符
ORA-06550: 第 5 行, 第 1 列: 
PL/SQL: SQL Statement ignored
请问这是什么原因呢?

------解决方案--------------------
SELECT * INTO v_row FROM student WHERE id:=11;
换成这个
SELECT * INTO v_row FROM student WHERE id=11;
------解决方案--------------------
"WHERE id:=11;"
这里错了
:=  这个是赋值
=   这个是判断

where是个filter过滤器,该是判断才是哈


------解决方案--------------------
第5行出错了,把:去掉就行了

------解决方案--------------------
问题一 命令行的右边有个编辑(editor)窗口,你可以在这里修改sql语句
问题二,你要达到的目的是什么?没有看明白