当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 修改自定义数据类型精度

MSSQL
SQL Server数据库技术(36)
SQL Server数据库技术(37)
SQL Server数据库技术(41)
SQL Server数据库技术(42)
SQL Server数据库技术(43)
SQL Server数据库技术(44)
SQL Server数据库技术(45)
SQL Server数据库技术(46)
SQL Server数据库技术(47)
SQL Server数据库技术(48)
SQL Server数据库技术(49)
SQL Server数据库技术(50)
SQL Server数据库技术(51)
SQL Server数据库技术(53)
SQL Server数据库技术(54)
SQL Server数据库技术(55)
SQL Server数据库技术(56)
SQL Server数据库技术(57)
SQL Server数据库技术(58)
SQL Server数据库技术(59)

MSSQL 中的 修改自定义数据类型精度


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 94 ::
收藏到网摘: n/a

/*--修改自定义数据类型精度的示例
     自定义数据类型一旦被引用,就不能再修改和删除,如果要修改数据的精度,就非常麻烦,下面的示例演示了如何修改
     假设要修改的自定义变量名为aa
--*/
--1.修改自定义变量类型的名称
exec sp_rename ’aa’,’aa_bak’,’USERDATATYPE’
go
--2.新增自定义变量(按新的精度)
EXEC sp_addtype N’aa’, N’numeric(20,2)’, N’not null’
go
--3.修改表,使用新增的自定义变量
declare @s varchar(8000)
declare tb cursor local 
for select ’alter table [’+object_name(a.id)+’] alter column [’
 +a.name+’] aa’
from syscolumns a join systypes b on a.xusertype=b.xusertype
where b.name=’aa_bak’
open tb
fetch next from tb into @s
while @@fetch_status=0
begin
 exec(@s)
 fetch next from tb into @s
end
close tb
deallocate tb