--用如下SQL找到所有符合条件的表名和列,生成动态SQL执行。
select *
from information_schema.columns
where data_type='numeric' and numeric_precision=18 and numeric_scale=4
解决方案 »
- 异机的背份文件拷贝
- 问一个列转行的问题
- 帮我看下SQL语句怎么写
- 怎样在互联网上访问铁通宽带的服务器
- 新手问题,请问 数据库 能否对文件进行管理
- 如何写一个SQL: 将结果集导入到另一张表 但忽略联合主键重复的纪录
- Unable to read local eventlog (reason: 事件日志文件已在读取间更改。).
- 什么原因会导致 sql server 2000 数据库处于质疑状态
- 求助!MSSQL 2000装在Win2003上出现“Microsoft 全文检索引擎包的安装失败。(-2147220991) 0x80040201 事件无法调用任何订户”的错误
- Access中怎样写日期类型的条件,如select * from table where Date > '2001-7-28',说不对
- 一个查询赋值问题
- 插入记录的问题。
select @sql = @sql + ' alter table [' + table_name + '] alter column [' + column_name + '] numeric(18,2) '
from information_schema.columns
where data_type='numeric' --and numeric_precision=18 and numeric_scale=4print @sqlexec (@sql)
--用如下SQL找到所有符合条件的表名和列,生成动态SQL执行。declare @sql varchar(8000)set @sql=''
select @sql = @sql + ' alter table [' + table_name + '] alter column [' + column_name + '] numeric(18,4) '
from information_schema.columns
where data_type='numeric'
and (
(numeric_precision=12 and numeric_scale=2) or
(numeric_precision=12 and numeric_scale=4) or
(numeric_precision=10 and numeric_scale=2) or
(numeric_precision=10 and numeric_scale=4) or
(numeric_precision=18 and numeric_scale=2)
)print @sqlexec (@sql)