对所有表进行类似处理
eg1:
大家知道,如果将一个表所有者改为dbo,只需
sp_changeobjectowner '表名','dbo'即可
但要将所有的表的所有者都改为dbo,可以用循环处理,此处略
其实用SQL的系统存储过程sp_MSForEachTable可以轻松搞定
只需exec sp_MSForEachTable 'sp_changeobjectowner ''?'', ''dbo'''
当然,可能运行时会有错(比如有些表的所有者原先就是dbo),不用理它,运行一遍就行了。
eg2:
所有表都加上一个自增长的字段
大家知道对一个表加的话只需: alter table 表名 add iid int identity(1,1)
若需对所有的表都加的话只需: sp_MSForEachTable 'alter table ? add iid int identity(1,1)'
同理,删除所有表中的iid字段只需 sp_MSForEachTable 'alter table ? drop column iid'
当然,可能运行时会有错(比如加字段时该表中已有该字段,删除字段时没有该字段),不用理它,运行一遍就行了。
eg3:
对所有表中的num字段进行四舍五入处理
sp_MSForEachTable 'update ? set num = round(num,2)'
当然,可能运行时会有错(比如有些表中没有num字段),不用理它,运行一遍就行了。
中国海量技术资料网站超级搜索
本站声明
- 如果您发现链接错误,请通知我们,不胜感激。
- 如果您认为本站文章侵犯您的版权,请通知我们,我们将立即删除。
- 本站提供的文章收集连接于其他网站,版权归作者所有。
- 本站的文章仅供学习和研究之用,严禁用于商业用途。
最新统计
- 文章中心总数:51611篇
- 今日更新文章:0篇
- 本周更新文章:0篇
- 备用更新文章:10篇

