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

奇怪的存储过程问题(参数没有效果)
我的数据:

ID THENAME SCORE NM BIRTHDAY CLASSID
a ssss 99 2011-12-8 2
c dd 92 2011-12-7 5
b fff 90 2011-12-6 6
d gggs 92 2011-12-5 8

我的存储过程(根据传入的生日日期查询对应的学生记录):
create or replace
PROCEDURE PRO_TEST2 
(
  BIRTHDAY IN DATE,
  PARM OUT SYS_REFCURSOR
) AS 
BEGIN
  OPEN PARM FOR
  SELECT * FROM METEST MT WHERE TRUNC(MT.BIRTHDAY,'dd') = TRUNC(BIRTHDAY,'dd');
END PRO_TEST2;

奇怪的是为什么BIRTHDAY参数无论传入什么日期,总是把所有的学生记录全部都查出来了,请大家来解惑

------解决方案--------------------
别同名
------解决方案--------------------
SQL code
--哈哈。传入的参数和字段不能都叫BIRTHDAY。Oracle会不识别的。