sqlserver简单点的方法能够将所有的数量字段多加一位小数
开始建数据库时,设的数量字段为3位小数,系统运行一段时间后,发现3位小数不够了,重建数据库也不可能了,各位大虾有木有简单点的方法能够将所有的数量字段改为4位小数?
create table #A(id decimal(9,3))
insert into #A
select 1
select * from #A
---只需执行下面
alter table #A alter column id decimal(9,4)
DECLARE @SQL VARCHAR(MAX) select @SQL=ISNULL(@SQL+' ','')+'ALTER TABLE '+OBJECT_NAME(OBJECT_ID)+' ALTER COLUMN '+COL.NAME+' '+TYPES.NAME+'('+LTRIM(COL.PRECISION)+',4);'FROM SYS.COLUMNS COL INNER JOIN SYS.TYPES TYPES ON COL.SYSTEM_TYPE_ID=TYPES.SYSTEM_TYPE_ID WHERE TYPES.NAME IN ('NUMERIC','DECIMAL') AND COL.SCALE=3 EXEC(@SQL)