静态SQL与动态SQL的比较

静态SQL与动态SQL相比具备很多优点,最主要的表现在两个方面:1、 静态SQL指定具体的对象,可以避免动态SQL中隐含的错误2、 静态SQL的分析和执行速度比动态SQL要快所以,如果使用静态SQL可以达到目的,我们推荐用静态SQL替代动态SQL,即使需要多编写一些代码也是值得的。那么,在开发程序代码的时候,如何判定一段SQL代码究竟该采用动态SQL,还是该采用静态SQL呢?简单总结以...
摘要由CSDN通过智能技术生成

静态SQL与动态SQL相比具备很多优点,最主要的表现在两个方面:

1、 静态SQL指定具体的对象,可以避免动态SQL中隐含的错误

2、 静态SQL的分析和执行速度比动态SQL要快

所以,如果使用静态SQL可以达到目的,我们推荐用静态SQL替代动态SQL,即使需要多编写一些代码也是值得的。那么,在开发程序代码的时候,如何判定一段SQL代码究竟该采用动态SQL,还是该采用静态SQL呢?简单总结以下几个原则,供大家参考:

1、寻找消除动态SQL的机会

一般而言,想采用动态SQL实现的语句中都有不确定的因素,如果所有信息都确定,没有理由采用动态SQL来实现,SQL语句的不确定因素包括:SQL选择的字段列名不确定,选择的From表名不确定,以及Where条件中的条件字段名不确定等情况,可采用Decode, Case,以及IF ELSE来分情况写成静态SQL。

举例:

Execute immediate

‘select ‘|| p_name

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值