日期:2014-05-17  浏览次数:20430 次

SQL修改字段长度不改变数据类型varchar\nvarchar
公司开发的软件,以前的低版本都是用的varchar,新版本都是用的nvarchar
我现在想写语句修改字段长度,有什么办法不判断字段类型是varchar还是nvarchar直接修改长度的呢

例如:student表有一个字段remark,低版本是varchar(40),高版本是nvarchar(40),我现在需要修改成长度为100,以为低版本有很多系列,高版本也有很多系列,而SQL的修改长度语句是
alter table student
alter columns remark 数据类型(100) not null

现在我处理方法是通过判断syscolumns的xtype为167或者231再调用不同alter语句
if (select xtype from syscolumns where id = object_id('ua_account') and name='remark') = 167

请问还有更加简单的方法吗?

本人菜鸟,不是做开发的,请高手指教

------解决方案--------------------
没有了,这个是最简单的方法了.
------解决方案--------------------
也可以不用判断吧,直接都改成nvarchar就行,他们是可以转换的
不然就只能用你的那个方法了