首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle新手求教解决方案

2012-03-08 
oracle新手求教DECLAREv_system_id INTBEGINv_system_id : 10SELECT * FROM sec_team WHERE system_id

oracle新手求教
DECLARE
  v_system_id INT;
BEGIN
  v_system_id := 10;
  SELECT * FROM sec_team WHERE system_id = v_system_id;
END;

报错:此表达式类型声明不完整或格式不正确

[解决办法]
SQL块中,用select的时候,后面必须INTO语法,而且INT应该定义为NUMBER

SQL code
DECLARE  v_system_id NUMBER(4);  vs_sce_team varchar2(100) := ''; --变量类型要和字段sec_team类型一致BEGIN  v_system_id := 10;  SELECT * FROM sec_team INTO vs_sce_team  WHERE system_id = v_system_id and ROWNUM < 2;END;
[解决办法]
int 是number 的子类型,没错
存储过程中不能单纯的只做SELECT
[解决办法]
赞成一楼~
[解决办法]
赞成一楼~但是不知道ROWNUM < 2;是什么意思!


1、PLSQL是没有INT的,能不能用不知道。
2、PLSQL中select 必须和into 一起用。并且 select语句有且只有一条记录返回。

[解决办法]
顶顶顶顶顶顶顶顶顶顶
[解决办法]
探讨

赞成一楼~但是不知道ROWNUM < 2;是什么意思!


1、PLSQL是没有INT的,能不能用不知道。
2、PLSQL中select 必须和into 一起用。并且 select语句有且只有一条记录返回。

[解决办法]
探讨
赞成一楼~但是不知道ROWNUM < 2;是什么意思!

[解决办法]
在这里 select只做赋值用
[解决办法]
首先你的变量类型声明错误,应该用number。其次,SQL语句要用select * into v_system_id from sec_team ;
[解决办法]
探讨

引用:
赞成一楼~但是不知道ROWNUM < 2;是什么意思!


ROWNUM < 2 只查前2行记录

[解决办法]
探讨

引用:

引用:
赞成一楼~但是不知道ROWNUM < 2;是什么意思!


ROWNUM < 2 只查前2行记录


<2 只有1行的~

热点排行