经常遇到某个字段二进制截断,可是数据库中很多表都存在字段长度不够的情况,那么有没有一键扩展所有表中某个名称字段长度的方法呢,答案是有的,下面简单说下使用方法,,
- 使用封装好的sqlserver 存储过程实现一键扩展某个字段长度,过程名为Batch_Widthen_col_length
- 参数说明,第1个参数,@tbname默认为空字符,代表修改所有表的特定字段长度
- 如果@tbname不为空,则可以修改指定表的特定字段长度
- 第二个参数,@colname 代表字段名称
- 第三个参数,代表将@colname 扩展到的长度,如果某张表的长度已经达到要求的长度,则不会发生扩展
- 如果扩展的某张表的字段存在约束,则执行存储过程后,会给出建议,方便下一步扩展
- 执行举例EXEC Batch_Widthen_col_length @colname=‘SHPGG’,@col_length=‘50’,意思是要将系统中的所有字段名称为shpgg的字段扩展为varchar(50)
--EXEC Batch_Widthen_col_length @colname='SHPGG',@col_length='50'
create PROCEDURE Batch_Widthen_col_length
@tbname VARCHAR(200)='',--可以指定扩展特定表的字段长度
@colname VARCHAR(200),
@col_length INT=0 --定义字节数
AS
BEGIN
IF @col_length=0
BEGIN