Sql server 数据库模式质量门/分析
我的任务是彻底改造一个数据库。该数据库存在所有此类不良做法,主键很少,缺少关系,数据类型选择不当。我理解其中一些很难理解,但肯定有一些是可以告诉我们的。如果名称是IsActive,类型是nvarchar,那么这至少应该是一种代码味道。我试图找到质量门,甚至一些工具,如RedGate Schema compare或类似工具 为了最终确定这是一个SQL Server数据库,我显然正在进入SSDT,以便我们可以获得有关更改的历史信息,我认为作为CI过程的一部分,我将在其上运行一个质量门 例如,T-SQL有一个,但我找不到一个可以分析模式的工具,也找不到一个真正可以在本地或从bitbucket管道角度设置模式的工具,我个人使用它进行大量的通用质量检查。例如,搜索没有主键的表,或名称中有id但没有引用任何内容的列,或强制执行命名标准 这是一种特别有价值的方法,如果 您编写测试以生成代码来修复问题, 您可以在其他数据库中在几分钟内移动这些测试,这样可以节省几天的工作。Sql server 数据库模式质量门/分析,sql-server,database-design,sonarqube,schema,Sql Server,Database Design,Sonarqube,Schema,我的任务是彻底改造一个数据库。该数据库存在所有此类不良做法,主键很少,缺少关系,数据类型选择不当。我理解其中一些很难理解,但肯定有一些是可以告诉我们的。如果名称是IsActive,类型是nvarchar,那么这至少应该是一种代码味道。我试图找到质量门,甚至一些工具,如RedGate Schema compare或类似工具 为了最终确定这是一个SQL Server数据库,我显然正在进入SSDT,以便我们可以获得有关更改的历史信息,我认为作为CI过程的一部分,我将在其上运行一个质量门 例如,T-SQ
有一系列这样的测试可以免费使用。我强烈建议您与tSQLt一起查看它们。问题到底是什么?要求非现场资源是离题的。在这个论坛中,你可以问一些问题,比如我如何查询数据模式以返回列与名称和数据类型匹配的表,这样我们就可以帮助你开发一个工具,就像你所要求的一样,但一般来说,你的问题是模糊的,并且会引起固执己见的回答。举个例子,我的大部分业务都在做你描述的任务,如果有一种一刀切的方法,我就没有工作了。