Oracle 将一个查询结果值动态赋值给一个变量 PDF 下载
本站整理下载:
链接:https://pan.baidu.com/s/1s7_9pFvfHL27MJNUlvssNw
提取码:uh9z
相关截图:

主要内容:
Oracle 将一个查询结果值动态赋值给一个变量
在写存储过程或函数时,经常需要用到中间变量,需要将一些值做临时存储。
可以通过动态变量方式来赋值。如下:
FUNCTION YOUR_FUN (VAL1 IN NVARCHAR2)
RETURN NCLOB
IS
PRAGMA AUTONOMOUS_TRANSACTION;
MID_ID NUMBER (19); –中间变量
BEGIN
SELECT ID
INTO MID_ID
FROM TABLE1
WHERE A = 1;
END;
以上语句在条件A=1满足时,能够成功赋值给变量MID_ID,但如果没有查询到值时,该语句在执行时会报错(因为未查询到值)
可以在查询值外加入MAX() 或 MIN() 如下处理:
FUNCTION YOUR_FUN (VAL1 IN NVARCHAR2)
RETURN NCLOB
IS
PRAGMA AUTONOMOUS_TRANSACTION;
MID_ID NUMBER (19); –中间变量
BEGIN
SELECT MAX(ID)
INTO MID_ID
FROM TABLE1
WHERE A = 1;
END;
如果条件A=1不满足时,会返回一个空值,不会出现报错情况。这种应用在某种场景时很有用:当需要根据获得的动态变量值做分支判断时。
参考以下代码:
FUNCTION YOUR_FUN (VAL1 IN NVARCHAR2)
RETURN NCLOB
IS
PRAGMA AUTONOMOUS_TRANSACTION;
MID_ID NUMBER (19); –中间变量
BEGIN
SELECT MAX(ID)
INTO MID_ID
FROM TABLE1
WHERE A = 1;
IF MID_ID > 0
THEN
–一些逻辑处理
COMMIT;
ELSE
–另一些逻辑
COMMIT;
END IF;
END;
如果以上代码变量赋值不加入MAX(ID)时,当A=1的条件不满足时,动态赋值语句会报错,执行将中断,将不会走到 IF -ELSE 分支判断。
以上是一个Oracle存储过程使用中的一个技巧,留意下。
*** 次数:10600 已用完,请联系开发者***
1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!384324621@qq.com
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有★币奖励和额外收入!
IO 源码网 » Oracle 将一个查询结果值动态赋值给一个变量 PDF 下载
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有★币奖励和额外收入!
IO 源码网 » Oracle 将一个查询结果值动态赋值给一个变量 PDF 下载
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- IO源码吧