我想动态更改我的列的数据类型" ROE 2"如果列标题类似于" ROE"。
,则在表tb1到十进制中我的列标题会随着时间的推移而增加
有可能吗?
答案 0 :(得分:0)
你需要为此编写动态SQL ..从这里开始http://www.sqlteam.com/article/introduction-to-dynamic-sql-part-2
答案 1 :(得分:0)
您可以使用目录视图sys.columns
从表中检索所有想要的列,并将ALTER
语句构造为字符串:
SELECT 'ALTER TABLE tb1 ALTER COLUMN [' + name + '] Decimal(18,2) NULL'
FROM sys.columns
WHERE [object_id] = OBJECT_ID('tb1')
AND name LIKE 'ROE%'
从那里你可以抓取查询并手动运行它们或打开CUSROR
并迭代每个语句以通过EXEC
调用来运行它们。