zoukankan      html  css  js  c++  java
  • 在临时表的指定字段前面插入字段

    摘要:在临时表的指定字段前面插入字段
      在临时表的指定字段前面插入字段
      问题描述:
       使用下面的代码创建一个临时表,怎么样才能在‘长度’字段之前插入一个字段?
      create table #temp(CODE varchar(50),长度 varchar(50),颜色 varchar(50), 合计 varchar(50))
      /*- 一般来说,列位置不重要,处理的时候写列的列表就行了。如果一定要处理,则参考下面的示例-*/
      --创建临时表
      create table #temp(CODE varchar(50),长度 varchar(50),颜色 varchar(50), 合计 varchar(50))
      --添加一列 alter table #temp add 新加字段 varchar(50)
      go
      --调整列的位置,把新加字段移动到长度的前面
      EXEC sp_configure ’allow updates’,1
      RECONFIGURE WITH OVERRIDE
      go
      update a set
       colid=case when a.colid=c.colid then b.colid else a.colid+1 end,
       colorder=case when a.colid=c.colid then b.colid else a.colid+1 end
      from tempdb.dbo.syscolumns a,
       (select colid from tempdb.dbo.syscolumns
       where id=object_id(’tempdb.#temp’)
       and name=N’长度’) b,
       (select colid=max(colid) from tempdb.dbo.syscolumns
       where id=object_id(’tempdb.#temp’)) c
      where a.id=object_id(’tempdb.#temp’)
       and a.colid>=b.colid
      go
      EXEC sp_configure ’allow updates’,0
      RECONFIGURE WITH OVERRIDE
      GO
      --显示结果
      select * from #temp
      --删除临时表
      drop table #temp
      /*--结果
      CODE 新加字段 长度 颜色 合计
      ------- ----------- ------- ------- -------
      (所影响的行数为 0 行)
      --*/

     -----------------------------------------------------------------------------------------

    本篇文章摘自网络 在sql2005上验证不可以,sql2000或许可以。

    下面的例子是更改sql2000表print_bill的'BillMKID'列的顺序,放到最前面,也未验证是否可以。

    下列语句可以调整列的顺序(MSS

    update syscolumns set syscolumns.colid=syscolumns.colid+1 from syscolumns inner join sysobjects on 
    syscolumns.id=sysobjects.id and sysobjects.name='Print_Bill'

    update syscolumns set syscolumns.colid=1 from syscolumns inner join sysobjects on 
    syscolumns.id=sysobjects.id and sysobjects.name='Print_Bill'and syscolumns.name='BillMKID'

    Oracle上可以用BEFORE来指定插入字段的位置。

    btw:如果出现 未启用对系统目录的特殊更新。系统管理员必须重新配置 SQL Server 以允许这种操作

    打开mssql server 属性---》服务器选项----》启用对系统目录的特殊更新 即可

  • 相关阅读:
    __name__在调用时的区别
    Python内置模块--os模块的使用
    查询mysql 表的元数据信息
    nfs服务搭建
    jvm参数设置
    spring boot 集成 beetl
    spring boot 集成 swagger2 四部曲
    JavaScript中的this关键字
    jQuery 基础事件
    jQuery 表单选择器
  • 原文地址:https://www.cnblogs.com/inspurhaitian/p/1268434.html
Copyright © 2011-2022 走看看