我的任务是将数据从一个 MSSQL 服务器迁移到一个 MySQL 服务器。 我认为我比较容易先将 MSSQL 数据库转换为MS Access 数据库, 这样我就可以处理它, 然后将它导出为 MySQL 。
所以,我有一张桌子,叫做公司:
companyID | name | c_phon | c_email | c_address
1 StackOverflow 5555555555 [email protected] NYC
2 Google 5558675309 [email protected] NYC
在新的数据库中,我们改变了这些字段的保存方式。我们没有使用每个行的电话号码、电子邮件和地址,而是使用预设表格。
前缀 :
prefID | prefName
1 c_phone
2 c_email
3 c_address
我的问题是,我如何将每个字段转换成自己的一排, 在我们的Prefs公司桌子上。它应该看起来是这样的:
companyID | prefID | prefValue
1 1 5555555555
1 2 [email protected]
1 3 NYC
2 1 5558675309
2 2 [email protected]
2 3 NYC
我不知道怎么用标本什么的 所以我想用SQL做这个
INSERT INTO comanyPrefs (companyID, prefID, prefValue)
SELECT companyID, prefID, @fieldName
FROM companies, preferences
WHERE @fieldName = prefName
显然这不起作用。 我如何使用变量字段名称选择字段? 如何为每个字段插入一行?