zoukankan      html  css  js  c++  java
  • SQL允许你用EXECUTE执行一个变量中定义的SQL语句,并且允许你在被执行的SQL语句中,再次嵌套入一个变量定义的语句,并且再次在其中用EXECUTE执行它

    declare @sqlstr varchar(3000)
    set @sqlstr='declare @subsqlstr varchar(1000);'
    set @sqlstr=@sqlstr+'set @subsqlstr=''select * from tblproducts'';'
    set @sqlstr=@sqlstr+'execute (@subsqlstr)'
    execute(@sqlstr)
    在上面的代码中,@SQL变量中定义的是一组SQL语句,在这组SQL语句中,又定义了一个@SUBSQL变量,在其中存放了SELECT语句,
    所以,当系统执行@SQLSTR时,其中定义的变量会被执行,执行的结果是,构造了一组动态执行的SQL语句,将其存入了变量,最后,在EXECUTE中又被执行,这种嵌套的执行,我们就姑且称其为动态执行能力吧
    不过,需要相当注意的是:
    1,由于在变量中存放语句组,因此,且莫忘记在每一个语句末尾加上分号(分号是SQL一句语句的结束标志)
    2,如果在语句中包含变量的赋值,请记住你是在写一个变量赋值语句,因此记住加上单引号将值括起
    3,如果你在变量中定义的语句组中要引用字符串常量,请先将单引号替换成两个单引号 
  • 相关阅读:
    技能的切实掌握 必须动手
    sqlite 网址
    android视频教程
    Windows Azure
    mysql 存储过程 获取统计结果
    “道家”幸福生活的组成
    [文摘20110724]徐鹤宁 语录
    eclipse swt
    mysq 存储过程 插入测试数据
    WPF 视频教程
  • 原文地址:https://www.cnblogs.com/Yellowshorts/p/2918097.html
Copyright © 2011-2022 走看看