【发布时间】:2011-03-17 00:04:03
【问题描述】:
我决定重写我拥有的规范化很差的数据库。我已经创建了新数据库,但现在需要将数据从旧数据库移到新数据库中。我不确定如何完成。例如,在旧数据库中,我有一个如下所示的 webDorms 表:
id (PK, int)
room_type (varchar)
description (char)
available (varchar)
max_occupancy (varchar)
current_occupancy (varchar)
dorm_room (varchar)
dorm_building (varchar)
building_code (varchar)
在新数据库中,我将其拆分为两个表 Buildings 和 Housing。住房是这样的:
id (PK, int)
building (FK, int)
room (nvarchar)
current_occupancy (int)
max_occupancy (int)
is_available (bit)
gender (nvarchar)
room_type (nvarchar)
建筑物看起来像这样:
id (PK, int)
building_code (nvarchar)
building_name (nvarchar)
我手动重新填充了 Buildings 表(大约有 20 行),但 Housing 表(与之前的 webDorms 表最相似)包含大约 300 行 - 我宁愿不重新输入所有数据。
对完成此导入的最佳方式有何建议?
【问题讨论】:
-
新表是在同一个数据库中,还是在单独的数据库中?如果它们位于不同的数据库中,有什么方法可以在它们之间使用 SELECT/INSERT 语句?
-
它们位于不同的数据库中 - 我可以使用 SELECT/INSERT 并考虑使用 SELECT INTO - 但我需要一种方法来跳过某些列(在目标表中)并将字符串转换为相关的 ID 号(例如 building_name 到建筑物)
标签: sql sql-server tsql import export