SQL Server重命名工具

SQL Server重命名工具,sql,sql-server,refactoring,Sql,Sql Server,Refactoring,我有一个数据库,里面有15年的积垢,由多个团队和多个语言的人填充。我希望重命名表/列/约束以匹配某种类型的标准 问题是,一个列可能会在大量存储的过程中被引用,除了使用SQL Digger之类的工具搜索每个存储过程之外,没有其他方法可以找到它。问题是,我想重命名大量实体,并手动为每个实体重命名,这听起来很痛苦 我一直在寻找一个有助于名称重构的工具,但找不到任何东西。有些工具(这里)含糊其辞地宣称可以做到这一点,但实际上我并没有看到所有列出的工具都是公平的 有人使用过这样的工具吗?我没有使用过这个工

我有一个数据库,里面有15年的积垢,由多个团队和多个语言的人填充。我希望重命名表/列/约束以匹配某种类型的标准

问题是,一个列可能会在大量存储的过程中被引用,除了使用SQL Digger之类的工具搜索每个存储过程之外,没有其他方法可以找到它。问题是,我想重命名大量实体,并手动为每个实体重命名,这听起来很痛苦

我一直在寻找一个有助于名称重构的工具,但找不到任何东西。有些工具(这里)含糊其辞地宣称可以做到这一点,但实际上我并没有看到所有列出的工具都是公平的


有人使用过这样的工具吗?

我没有使用过这个工具,但使用过他们的其他Sql Server工具,他们做了他们声称的事情


我没有用过这个,但用过他们的其他Sql Server工具,他们做了他们声称的事情


过去,我曾使用VisualStudio2010中的数据库项目进行重构活动,并取得了很大成功。数据库项目肯定有很多怪癖,但没有什么是您无法解决的


您可以在这里找到更多关于它的详细信息:

我过去曾在VisualStudio2010中使用数据库项目进行重构活动,并取得了很大成功。数据库项目肯定有很多怪癖,但没有什么是您无法解决的

您可以在此处找到更多详细信息:

有几个选项:

红门SQL重构好了,现在是

请注意,这些工具只能足够智能地查找通过直接引用或通过适当的依赖关系公开的引用。如果您使用动态SQL构造表或列名,那么您就不走运了

几年前,我还在博客上写过让SysDependes保持最新状态的内容,但我不确定它对专栏尤其有用:

有两种选择:

红门SQL重构好了,现在是

请注意,这些工具只能足够智能地查找通过直接引用或通过适当的依赖关系公开的引用。如果您使用动态SQL构造表或列名,那么您就不走运了

几年前,我还在博客上写过让SysDependes保持最新状态的内容,但我不确定它对专栏尤其有用:

我在用电脑有一段时间了。这是一个免费的工具,到目前为止,它工作得非常好

他们的解决方案中心有一篇文章

我注意到2013年发布了一个新版本,但我不确定它是否仍然是免费的。

我已经使用了一段时间。这是一个免费的工具,到目前为止,它工作得非常好

他们的解决方案中心有一篇文章


我注意到2013年发布了一个新版本,但我不确定它是否仍然是免费的。

使用上述任何工具更新对象时要小心,因为它们只搜索数据库中的引用。需要记住的重要一点是应用程序的数据访问层中的代码

另一个您可能想要检查的工具是。它可以找到所有未使用的数据库对象,直观地显示所有引用,但它也可以搜索.NET解决方案并在那里找到引用


同样,考虑到您的数据库已有15年的历史,您可能在不同的遗留应用程序中拥有代码,而不仅仅是.NET。不管怎样,祝你好运。希望现在已经完成:

使用上述任何工具更新对象时要小心,因为它们只搜索数据库中的引用。需要记住的重要一点是应用程序的数据访问层中的代码

另一个您可能想要检查的工具是。它可以找到所有未使用的数据库对象,直观地显示所有引用,但它也可以搜索.NET解决方案并在那里找到引用


同样,考虑到您的数据库已有15年的历史,您可能在不同的遗留应用程序中拥有代码,而不仅仅是.NET。不管怎样,祝你好运。希望这一切现在都完成了:

看看这本书:这仍然不容易,但这本书有一些值得学习的技巧。从:选择引用\u模式\u名称,引用\u实体\u名称,引用\u id,引用\u类\u描述,是否依赖于sys.dm\u sql\u引用\u实体'YourObject','OBJECT';GO请注意,依赖项支持在过去的几个版本中发生了变化,我认为在sql Server 2008之前,sys.dm_sql_referencement_entities不可用。另外,特定的DMV似乎对列名没有帮助……看这本书:这仍然不容易,但这本书有一些值得借鉴的技巧。从:选择引用模式名称,引用实体名称,引用id,引用类描述,调用方依赖于sys.dm\u sql\u引用实体“YourObject”,“OBJECT”;Go请注意,依赖项支持在过去的几个版本中发生了变化,
我认为sys.dm_sql_引用_实体在SQLServer2008之前是不可用的。而且,特定的DMV似乎对列名没有帮助…哇,我不知道这是存在的。谢谢。哇,我不知道这是真的。非常感谢。