• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    sqlserver 动态创建临时表的语句分享
    因此计划先把数据转插入一个临时表,再对临时表的数据进行分析。
    问题点是如何动态创建临时表。原先Insus.NET使用下面代码实现:
    复制代码 代码如下:

    DECLARE @s NVARCHAR(MAX) = '
    IF OBJECT_ID(''[dbo].[#Tb]'') IS NOT NULL
    DROP TABLE [dbo].[#Tb]
    CREATE TABLE [dbo].[#Tb]
    (
    [xxx] INT,
    [xxx] NVARCHAR(50),
    '+ [dbo].[Column]() + '
    )'
    EXECUTE(@s)


    上面代码中,有一个函数[dbo].[Column]() 是取得一系列动态字段。
    其实,上面的代码一点问题也没有,是能正确动态创建一个临时表,但是接下来代码,我们无法再使用这个临时表[dbo].[#Tb] ,因为run第10行代码EXECUTE(@s)这动作之后,进程已经结束了。这样说法,动态创建出来的临时表,也没有什么意义了。
    为了解决这个问题,Insus.NET想到了一个方法,算是能解决这个问题。既能动态创建,又能在创建之后,能继续使用这个临时表。

    复制代码 代码如下:

    IF OBJECT_ID('[dbo].[#Tb]') IS NOT NULL
    DROP TABLE [dbo].[#Tb]
    CREATE TABLE [dbo].[#Tb]
    (
    [xxx] INT,
    [xxx] NVARCHAR(50)
    )
    DECLARE @tb NVARCHAR(MAX) = 'ALTER TABLE [dbo].[#Tb] ADD ' + [dbo].[Column]()
    EXECUTE(@tb)


    只要细心看了一下,就是可以知道,可以先按正常创建这个临时表,再动态修改这个临时表的字段。这样做之后,程序run完第10行代码之后,就能再继续使用这个临时表,如:
    SELECT * FROM [dbo].[#Tb]
    您可能感兴趣的文章:
    • SQLServer中临时表与表变量的区别分析
    • sql server创建临时表的两种写法和删除临时表
    • sqlserver 临时表的用法
    • sql server 临时表 查找并删除的实现代码
    • sql server中判断表或临时表是否存在的方法
    • sqlserver 临时表 Vs 表变量 详细介绍
    • SQL Server 向临时表插入数据示例
    • SQL Server 表变量和临时表的区别(详细补充篇)
    • sql server 创建临时表的使用说明
    • SQL SERVER临时表排序问题的解决方法
    上一篇:OBJECTPROPERTY与sp_rename更改对象名称的介绍
    下一篇:SQL 统计一个数据库中所有表记录的数量
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    sqlserver 动态创建临时表的语句分享 sqlserver,动态,创建,临时,