zoukankan      html  css  js  c++  java
  • 动态sql

    动态sql和静态sql的区别?

      所谓sql的动态和静态是指sql语句在何时被编译和执行,二者都是用在sql嵌入式编程中的,这里所说的嵌入式是指将sql语句嵌入在高级语言中,而不是针对单片机的那种嵌入式编程。

    什么是静态sql?

      高级语言中嵌入的sql语句在编译阶段sql的主体结构已经明确。

    什么是动态sql?

      sql的主体结构在编译阶段无法确定,只有等程序运行起来,在执行过程中才能确定。

    执行动态sql的方法?

      1)使用exec命令,exec有两个用途,一个用来执行存储过程,一个用来执行动态sql。用exec来执行静态sql没有意义,性能低,动态sql用在数据库名、表名、字段名作为参数的的场景。

    declare @test nvarchar(128)
    set @test = 'name'
    exec ('select '+ @test+' from child') //执行动态sql必须有这个括号
    declare @sql varchar(max)
    declare @test nvarchar(128)
    set @test = 'name'
    set @sql = 'select '+ @test+' from child'
    exec(@sql) //执行动态sql必须有这个括号

    注意:也可以使用 exec sp_executesql 形式
    EXEC sp_executesql @sql -- 注意:@sql必须是ntext,nchar,nvarchar类型,不可以是varchar类型
  • 相关阅读:
    activeMQ
    读写xml
    PLSQL
    oracle语法
    cxf远程调用服务
    FastDFS在linux下的安装和整合nginx实现上传图片和url访问
    dubbo和zookeeper的应用
    solr和Lucene的配置方式和应用
    win10 下安装 MongoDB 数据库支持模块(python)
    nodeJs 对 Mysql 数据库的 curd
  • 原文地址:https://www.cnblogs.com/llljpf/p/10550751.html
Copyright © 2011-2022 走看看