开发者社区> 问答> 正文

跨数据库information_schema加入SQL Server

我正在尝试提供一种将数据从一个模式版本迁移到另一个模式版本的通用解决方案。当源模式中的列数据类型与目标模式中的列数据类型不匹配时,会出现问题。我想创建一个查询,该查询将对列数据类型执行初步比较,以返回需要迁移之前需要修复的列。

我当前的方法是从目录之间不匹配的information_schema.columns地方返回表名和列名DATA_TYPE。但是,information_schema直接查询将仅从连接目录返回结果。

有人写过这样的查询吗?

展开
收起
心有灵_夕 2019-12-28 23:41:38 1053 0
1 条回答
写回答
取消 提交回答
  • 我通过直接查询系统表来做到这一点。查看syscolumns和sysobjects表。您也可以跨链接的服务器加入

    select t1.name as tname,c1.name as cname
    from adventureworks.dbo.syscolumns c1
    join adventureworks.dbo.sysobjects t1 on c1.id = t1.id 
    where t1.type = 'U' 
    order by t1.name,c1.colorder
    
    2019-12-28 23:41:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载