Sql server 数据库清理
我继承了一个格式不好的SQL server数据库。(一些咨询公司进来做这个项目,但没有完成就离开了) 我对该数据库的主要问题是:Sql server 数据库清理,sql-server,database,resource-cleanup,Sql Server,Database,Resource Cleanup,我继承了一个格式不好的SQL server数据库。(一些咨询公司进来做这个项目,但没有完成就离开了) 我对该数据库的主要问题是: 数据类型:很多tinyint和text类型 表没有规范化:一些键是名称而不是seq id 很多我不确定的表格正在被使用 很多我不确定的存储过程正在被使用 命名错误的表和存储的进程 我还继承了针对该数据库运行的asp.net应用程序 我想清理这个数据库。我知道必须在每个表中更改数据类型。用于清除所有额外的表和存储的进程。最简单的方法是什么。 任何其他使它更干净、更小
- 数据类型:很多tinyint和text类型
- 表没有规范化:一些键是名称而不是seq id
- 很多我不确定的表格正在被使用
- 很多我不确定的存储过程正在被使用
- 命名错误的表和存储的进程
此外,要查找未使用的存储过程,请在应用程序中每个存储过程的顶部添加一些基本日志记录,在X天之后,可能可以安全地删除表中未记录的存储过程,否则通过.NET代码进行繁琐的搜索就会找到它们。您写道:“表没有规范化:一些键是名称,而不是seq id。“我只想指出,规范化与使用自然键或代理键无关。数据库可以很好地规范化,并使用主键和外键的名称。在我看来,这是非常开放的,没有太多细节来得到一个好的答案。您可以使用redgate的“查找无效对象”及其“智能重命名”功能查看引用的对象。但在.NET应用程序中也有对这些资源的引用。长话短说,这将是一个缓慢的修复过程。大量手动检查和一点尝试(使用智能重命名!)以及错误,以了解清理最终将如何进行。jpw-我知道名称可以用于FKs,我是说,如果表B有列(seqid,Description),则表A中的链接是A.Description=B.Description。两个选项:1。了解它的功能,并行构建一个新的并迁移数据;2.对现有系统进行增量更改