`
jgsj
  • 浏览: 1028201 次
文章分类
社区版块
存档分类
最新评论

在表中指定位置添加字段

 
阅读更多

--开启系统表写开关
exec sp_configure 'allow updates',1 reconfigure with override
go
/*--在指定位置添加字段

添加字段到表中的指定位置
注意,字段定义必须符合 alter table add ...的规定
如果超过这个范围,则在表的尾部添加字段
一次只能添加一个字段,和 alter table 的限制完全一样
--使用示例
exec p_addfield 'tb','field1 varchar(20)','field2'
--*/
CREATE proc p_addfield
@tbname sysname,--表名
@fd_define nvarchar(1000), --字段定义(必须是合法的字段定义)
@Ins_fd nvarchar(30) --被插入字段將放在Ins_fd字段前面
as
declare @s nvarchar(4000),@colid int

if not Exists(select 1 from sysobjects where name=@tbname and xtype='U')--isnull(objectproperty(object_id(@tbname),'IsUserTable'),0)=0
begin
print (@tbname+'表不存在,請核實')
return
end
IF not Exists(select 1 from syscolumns where id=object_id(@tbname) and name=@Ins_fd)
begin
print (@tbname+'不存在'+@Ins_fd+'字段,請核實')
return
End
--开启系统表写开关
exec sp_configure 'allow updates',1 reconfigure with override
set xact_abort on
begin tran
--添加字段
select @colid=(select colid from syscolumns where id=object_id(@tbname) and name=@Ins_fd)
set @s='alter table ['+replace(@tbname,']',']]')+'] add '+@fd_define
Exec (@s)

update syscolumns set colid=colid+1 where id=object_id(@tbname) and colid>=@colid

update syscolumns set colid=@colid where id=object_id(@tbname)
and colid=(select max(colid) from syscolumns where id=object_id(@tbname))
commit tran
if @@error=0
print ('字段插入成功')
Else
print ('字段插入失敗')
--开启系统表写开关
exec sp_configure 'allow updates',0 reconfigure with override
go

--开启系统表写开关
exec sp_configure 'allow updates',0 reconfigure with override
go

分享到:
评论

相关推荐

    sql在一个表中添加字段并添加备注的方法

    1、加字段: alter table 表名 ADD 字段名 类型; eg: alter table sys_cwzd ...添加新字段: alter table bulletin add citycode varchar(6) not null default 0; # 城市代码 1.创建数据库时设置编码 create databa

    MySQL数据表添加字段

    在MySQL数据库管理中,添加字段是一项常见的操作,用于在已有的数据表中增加新的列来扩展数据表的结构。这通常发生在数据需求发生变化或者需要记录更多相关信息时。本篇文章将详细探讨如何在MySQL中添加字段,以及...

    KETTLE实现循环批量多表抽取添加字段

    总结来说,Kettle通过其强大的数据处理能力,允许我们在循环中对多个表进行批量操作,包括数据抽取、添加字段和导入到新的数据库。通过灵活地配置和组合不同步骤,我们可以实现复杂的数据集成需求,如本文所描述的...

    ArcGIS(ArcPy)脚本excel批量添加字段

    本文将深入探讨如何使用ArcPy脚本来批量地在Excel表格中添加字段,这对于处理大量地理属性数据非常有用。 首先,了解ArcPy的基本结构是必要的。ArcPy包含了多个模块,如arcpy.env用于设置环境变量,arcpy....

    VB_读取ACCESS数据库中所有表名及指定表的字段名.doc

    VB 读取 ACCESS 数据库中所有表名及指定表的字段名 VB 是一款功能强大的编程语言,可以用于读取 ACCESS 数据库中的所有表名和指定表的字段名。下面将详细介绍如何使用 VB 读取 ACCESS 数据库中的所有表名和指定表的...

    ArcGis批量加字段.zip

    通常,在ArcGIS中手动添加字段是一项繁琐的工作,需要逐个打开属性表,定义字段名、字段类型和长度等信息。但通过这款工具,用户只需要在Excel模板("字段模板填写.xls")中填写字段的相关参数,如字段名、字段类型...

    数据库建表增加或删除字段

    ### 二、向表中添加字段 #### 2.1 概念理解 有时候,随着业务需求的变化,我们可能需要在已有的表中新增一些字段以存储新的信息。在Oracle中,这同样可以通过`ALTER TABLE`语句来实现。 #### 2.2 SQL语法示例 根据...

    在数据表中插入或删除字段

    - 在某些数据库系统中,添加字段时可以指定其在表中的位置,例如MySQL支持使用`FIRST`或`AFTER 字段名`来控制新字段的位置。 #### 删除字段:使用 `ALTER TABLE DROP COLUMN` 当某个字段不再需要或成为冗余时,...

    Oracle中创建表,创建序列,创建自增字段,添加注释, 添加记录,添加触发器,提交

    在上面的示例代码中,添加了注释信息到表 `Car`、字段 `GUID`、字段 `PhoneId` 和字段 `UserName` 上。 添加记录(Insert)是指将新的数据插入到数据库表中。在上面的示例代码中,添加了一条记录到表 `Car` 中,...

    java如何获得数据库表中各字段的字段名

    ### Java如何获得数据库表中各字段的字段名 在Java编程中,经常需要与数据库进行交互,例如查询、更新或删除等操作。其中一项常见需求是获取数据库表中的所有字段名称。这通常在动态生成报表或者需要根据数据库结构...

    按字段属性csv表文件批量添加要素字段

    6. **错误处理**:在添加字段过程中,可能会遇到如字段已存在、字段类型不匹配等问题,脚本需要有适当的错误处理机制。 7. **日志记录**:为了追踪操作,通常会在脚本中添加日志记录,记录哪些字段成功添加,哪些...

    修改表 1、添加字段: alter table 表名add column 字段名 数据类型 位置 ; 2、删除字段: a

    其中,`表名`是你想要修改的表,`字段名`是你要添加的新字段的名称,`数据类型`指明新字段的数据类型(如INT, VARCHAR等),`位置`可选,用于指定字段在表中的位置。 2. **删除字段**: 要删除一个字段,你可以...

    mysql中添加字段insert

    添加字段意味着向已存在的表中插入新的列。有两种方式来实现这一操作: - **在特定字段后增加**: 使用 `ALTER TABLE` 语句,指定 `ADD` 子句,然后加上 `AFTER` 关键字,指明新字段将在哪个现有字段之后。例如...

    精彩编程与编程技巧-用代码创建数据库,表,字段...

    - **Fields.Append方法**:用于向表中添加字段。 - **TableDefs.Append方法**:用于向数据库中添加表定义。 ### 四、源代码标签解析 - “源代码”标签表明了本文档包含实际的编程代码,可用于参考和学习。 ### 五...

    ArcGIS不提供修改字段名称和类型的功能的原因及解决方法

    这种方法的一个小问题是,新添加的字段会默认出现在字段列表的末尾,这可能与用户的使用习惯不符,特别是在某些工作流程中,字段的位置具有特定的重要性。 ArcGIS Desktop 10.1及其更新版本引入了直接修改字段名称...

    SAP 标准报表增加字段的方法介绍

    - 在报表显示的字段列表中,找到需要添加字段的位置。 - 按下F1键,弹出的帮助文档中会列出报表所关联的数据结构。 - 查找与所需增加字段相关的数据结构名称。 ##### 2. 分析并修改数据结构 - **找到数据结构**...

    C# 获取json字段中指定值

    要安装此库,可以通过NuGet包管理器在Visual Studio中添加"Newtonsoft.Json"依赖。 在C#中,我们通常使用`JObject`、`JArray`、`JToken`等类来解析和操作JSON。以下是一些核心方法,用于从JSON字符串中获取特定字段...

    利用arcgis批处理对SHP批量加字段addfield

    2. **加载数据**:在ArcCatalog中,浏览并选择需要添加字段的Shapefile文件或者文件夹,该文件夹包含多个Shapefile。可以使用“Add Data”按钮将它们添加到目录树中。 3. **找到“Geoprocessing”工具**:在...

    MySQL命令行中给表添加一个字段(字段名、是否为空、默认值)

    在实际应用中,为表添加字段可能会影响到现有的数据。如果新字段要求非空且没有合适的默认值,可能会导致插入或更新操作失败,因此在设计数据库结构时需谨慎考虑字段的属性。此外,如果表数据量很大,执行`ALTER ...

    mysql批量增加字段.txt

    MySQL批量对表增加指定字段,会快速实现批量字段的添加。写了2个存储存储过程,执行即可。方便快速!

Global site tag (gtag.js) - Google Analytics