zoukankan      html  css  js  c++  java
  • SQL Server 2008 表变量 临时表

    最近做一个报表,其中 在报表中用到了存储过程,游标,cte表达式,临时表和表变量。

    在游标中循环遍历cte中的数据,把对应的数据存放在变量里面,之后把变量插入到表变量中,游标结束后,想要根据存储过程的参数对表变量进行过滤时,问题就来了。

    用动态sql拼接sql语句时,就会出错。提示时没有声明表变量。

    其实,表变量不能运用在动态sql中。怎么办呢?我是把表变量中的数据插入到临时表中,之后 在动态sql中实用临时表进行拼接就可以了。

    不知道 大家 有没有更好的想法。

    注:

    临时表 :

    #tablename

    表变量

    DECLARE @tablename TABLE
    (
        .....
    )

    在sql拼接时,拼接条件有一定的特殊写法

    DECLARE @sql NVARCHAR(max)
    DECLARE @cloum NVARCHAR(20)
    SET @sql='select * from table where 条件列='+''''+@cloum+''''
  • 相关阅读:
    特斯拉PET钥匙-蓝牙无钥匙
    超声波倒车雷达
    KiCad层次原理图标签和引脚的操作
    Nuget常用命令
    TCP/IP协议入门
    unbuntu(18.04)下体验dotnet core
    c#中的异步
    Git的不完全使用指南
    c#语言特性8.0
    c#语言特性7.x
  • 原文地址:https://www.cnblogs.com/yzhddeyan/p/4940689.html
Copyright © 2011-2022 走看看