FuncADDColumn(为表添加字段)

用于为表添加字段。可以侦测表中有没有这字段。
如果没有,添加该字段。

/*
author:nyb
time   :2003/12/29
fixtime :
aim    :看表中是否有这个字段,如果没有,添加上
input  :
调用:
execute FuncADDColumn 'a','c','int'
execute FuncADDColumn 'a','ddd','varchar(100)'
*/
CREATE   PROCEDURE FuncADDColumn
@tablename  varchar(128),  -- 表名
@Columnname varchar(128),---列名
@ColumnType varchar(128) -- 列定义

as
set @tablename = ltrim(rtrim(@tablename))
set @Columnname = ltrim(rtrim(@Columnname))
set @ColumnType = ltrim(rtrim(@ColumnType))

declare @string varchar(8000)

IF not EXISTS( select * from syscolumns where id=object_id(@tablename) and name = @Columnname )
begin
select  @string ='  ALTER  TABLE '+ @tablename + ' ADD [' + ltrim(rtrim(@Columnname)) + ']  ' + @ColumnType + ' null'
print @string
execute(@string)
end

 

GO

时间: 2024-10-29 12:30:38

FuncADDColumn(为表添加字段)的相关文章

mysql给表添加字段的命令

  给表添加字段的命令: ? 1 alter table tableName add newColumn varchar(8) comment '新添加的字段' 在这句语句中需要注意的是,comment为注释,就像在java中//作用是一样的. comment后需要加单引号将注释引起来.

Yii 2 创建 migration 给表添加字段的例子

使用 Yii 2 框架的 migration 也是挺方便的,现代 PHP 开发框架都具备这个特性,使用 migration 数据库迁移功能,对数据库进行操作,它的意义在于记录下数据库修改的版本,而且方便项目的部署,数据库的回滚,不需要手动操作线上的数据库. 创建一个 migration 执行 yii 命令: php yii migrate/create add_column_rsync_sh_to_conf_table 这样就生成了一个 migration 数据库迁徙文件. 我要给 Projec

oracle大表添加字段default经验分享

当oracle单表数据量上亿时,对表进行alter table aa add column_1 varchar2(2) defalut 'Y';时,效率及安全性是必须考虑的因素. 本帖以2亿的数据表aa举例: alter table aa add column_1 varchar2(2) defalut 'Y'; Table altered Executed in 3600 seconds 直接用了一个小时,而且在这过程中是加上了表级锁,也就是连查询都是会被等待的,这是相当危险的操作. 为什么会

MySQL和Oracle的添加字段的处理差别

昨天在微信群中有个朋友也是无意中问了一下,说数据库中的表字段想保持一种相对规范的顺序,怎么办?要知道Oracle中这个操作就比较纠结了,因为是按照追加的方式来处理的.没法在已有的字段1,字段2中间添加一个字段3.但是MySQL却可以,这个方面MySQL看起来要灵活的多,这个是什么原因呢,他们在设计上有什么差别呢. MySQL中对每个表存在一个定义文件,即frm文件,我们来取出一个表,看看能不能简单解析一下. 比如一个表字段的内容如下: > desc zd_warshrine_prostate;

Accessa如何在表添加现有字段

  ​1.打开你想要添加字段的数据表,然后点击菜单栏上的 数据表. 2.在数据表 选项中,我么点击 添加现有字段. 3.在界面的右边出现了 字段列表 的面板.,我们看到在这个面板中,有一个表,名字叫做"百度经验",我们点击左边这个加号,这样就展开了该表中的字段 计算字段"> 4.拖拽字段到表中,操作方法如下图. 5.弹出了添加字段的想到,我们双击可用字段中的字段就能添加字段到新的表,然后点击下一步 6.接着点击下一步 7.最后点击完成.

hibernate-数据库表增加字段后如何在获取历史数据时添加默认值?

问题描述 数据库表增加字段后如何在获取历史数据时添加默认值? 表增加了一个字段,定义是基本类型有默认值,新生成的数据没问题但是历史数据该字段都是空值,导致程序会出错,JavaBean中的字段类型double和数据库中的空值不匹配,本来想在get和set中做点文章,返回一个默认值,但是用hibernate的detachedCriteria查询返回的list直接就报null的错误,set方法都没执行,不知道是什么原理为什么set方法都没执行,是不是在set传入变量的时候就发现空值然后就报错了?另外有

c#-EF框架DBfirst,表的字段增加后,实体的字段无法同步添加

问题描述 EF框架DBfirst,表的字段增加后,实体的字段无法同步添加 如题,后期因为用户要求在一张表里添加了一个字段,然后想在实体里更新一下.通过从数据库更新到模型后会提示报错,"已存在具有相同键的条目".我把模型删了之后,重新添加也不行删除后整个模型都添加不了,而且报的错误与之前相同.如果把整个模型都删除,重新弄得话,确实可以.但是数据库里有很多表都是没用.跪求大神帮助.刚学EF的菜鸟一个!!!! 解决方案 微软主推的是CodeFrist 如果担心自己学习速度 或者习惯于DBfi

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

先看一下最简单的例子,在test中,添加一个字段,字段名为birth,类型为date类型. mysql> alter table test add column birth date; Query OK, 0 rows affected (0.36 sec) Records: 0  Duplicates: 0  Warnings: 0 查询一下数据,看看结果: mysql> select * from test; +------+--------+-----------------------

动态给表添加删除字段并同时修改它的插入更新存储过程_MsSql

有一个表,用户需要在后台操作它,希望能对它动态进行添加删除字段.这个功能也许没有问题,但是它原有插入与更新的两个存储过程,也需要一起修改.因此Insus.NET实现了它,因此此文会让你了解到怎样动态为一个表添加删除字段以及动态修改它的存储过程 首先需要建一个表[A],这个表只有两个字段,一个是[ID]自动增长,另一个是表[B]的字段名,存储的每一笔记录,即是用户需要操作的表[B]的字段.这个表[A]需要建添加,更新,以及删除的存储过程,方便用户在后台方便操作,还有重点部分,需要写触发器.如有记录