sql - 用于散列的脚本生成 SQL 服务器数据库架构的最快方法

标签 sql sql-server schema

我想为数据库获取整个 SQL 模式,然后生成它的哈希。这样我就可以检查回滚脚本是否将架构返回到其原始状态。有我可以使用的 SP 或其他一些狡猾的方法吗?我希望它尽可能快。

最佳答案

如果您将表和键与代码和约束分开,那么您可以轻松地对后者进行散列。

SELECT
    CHECKSUM_AGG(BINARY_CHECKSUM (*))
FROM   
    (SELECT
        definition 
    FROM
        sys.default_constraints
    UNION ALL
    SELECT
        definition 
    FROM
        sys.sql_modules
    UNION ALL
    SELECT
        definition 
    FROM
        sys.check_constraints
    ) foo

关于sql - 用于散列的脚本生成 SQL 服务器数据库架构的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/915109/

相关文章:

mysql - 如何获取相邻记录?

sql - 实现分页的有效方法

sql - 获取最后一个非空值?

sql - 每年需要更改数据库架构。应该使用哪种策略?

node.js - 如何在 nodejs 中为 neo4j 图形数据库创建模式?

json - 可以在 JSON 模式 (v4) 中指定字符串的最小/最大长度吗?

mysql - 如何更新第三行中的列与 MySQL 中第二行中的列相同?

php - MySQL 的问题。我应该怎么办?

sql - 动态查询根据条件选择列

sql - 单个配置单元查询以提取一段字符串