在我们公司,产品是在.NET中作为前端开发的,而SQL Server 2005则是作为后端开发的。
最初,当他们启动项目时,他们没有遵循数据库规范化技术。现在他们想要进行数据库规范化,其中数据库只包含一个包含数千行的表。
是否可以拆分此现有表并实现规范化?
任何人都可以告诉我如何一步一步走吗?
谢谢,
史蒂夫。
答案 0 :(得分:2)
好吧,我是SSIS软件包的忠实粉丝。 因此,假设您有源表结构(巨大的)并且您已经定义了目标表,我会说开始构建一个包来迁移数据。 如果你告诉你的表格结构会更容易,但我认为你有这样的东西: 表订单 领域: 的OrderId, 顾客姓名 产品名称 所以一个
很明显,您需要一个客户表和一个产品表,因此您的第一步是从订单运行select distinct(CustomerName)并将其插入到您的新客户表中。对产品和您可能需要的任何其他实体执行相同的操作。
要填充新订单表,您可以直接从巨大的表中获取有序或orderDate等字段,当涉及到客户端时(旧表上有文本,将在新表上显示ID),您将需要查找转换任务,将名称转换为ID。