如何将mysql 数据库导入到sql server 2008 数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将mysql 数据库导入到sql server 2008 数据库相关的知识,希望对你有一定的参考价值。

1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.19-win32.msi
2.打开控制面板\\管理工具\\数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源。
3.在登录login选项卡中输入数据源名称Data Source Name,此处输入MysqlDNS;然后输入服务器 Server,用户User,密码Password,输入正确后选择要导入的数据库。在连接选项connect options中根 据需要设置MySql使用的端口port和字符集Character Set。
注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk, 否则导入到Sql Server可能会出现问号乱码。
4.打开sql server企业管理器,新建一数据库MySql。选择该数据库,单击右键选择所有任务\\导入数 据。
5.选择数据源为其它(ODBC数据源),用户/系统DSN为MysqlDNS。其余根据向导进行,即可将数据从 MySql数据库导入到MSSQL数据库中。
参考技术A 最近在搞将mysql 数据库导入到sql server 2008 数据库,按照网上说的方法搞好后,发现在导入导出向导后找不到我在odbc 配置的数据源名,转换不了,提示【无法找到用于将提供程序类型映射到 SSIS 类型的映射文件】,各位大哥大姐们,给小妹指条明路吧。------解决方案--------------------------------------------------------会不会是你mysql的数据驱动没装好ODBC中才找不到吧,你重新装一下驱动,然后在ODBC中配置好在测试一下连接,然后可以通过SQL Server 的DTS工具导入;

如何将 mysql 转储导入 SQL Server 数据库

【中文标题】如何将 mysql 转储导入 SQL Server 数据库【英文标题】:How do i import a mysql dump to SQL Server database 【发布时间】:2016-08-21 23:43:02 【问题描述】:

是否可以将 mysql 转储导入 SQL Server 数据库?我有一些语法问题。

我浏览了一些文章,但都没有帮助

这是转储的样子

CREATE TABLE IF NOT EXISTS `search_by_vehicle` (
`id`                int(11) NOT NULL auto_increment,
`vendor`            varchar(255) NOT NULL,
`car`           varchar(255) NOT NULL,
`year`          varchar(255) NOT NULL,
`modification`  varchar(255) NOT NULL,
`param_pcd`         varchar(32) NOT NULL,
`param_dia`         varchar(8) NOT NULL,
`param_nut`         varchar(32) NOT NULL,
`param_bolt`        varchar(32) NOT NULL,
`tyres_factory`     text NOT NULL,
`tyres_replace`     text NOT NULL,
`tyres_tuning`  text NOT NULL,
`wheels_factory`    text NOT NULL,
`wheels_replace`    text NOT NULL,
`wheels_tuning`     text NOT NULL,
PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;  

INSERT INTO search_by_vehicle (vendor, car, modification, year, tyres_factory, tyres_replace, tyres_tuning, wheels_factory, wheels_replace, wheels_tuning, param_pcd, param_nut, param_bolt, param_dia) 
VALUES( 'Jaguar','S-Type','3.0i','1998','235/50 R17','245/40 R18|245/35 R19','','7.5 x 17 ET45','8 x 18 ET40|8 x 19 ET40','','5*108','12*1.5','','63.3');

【问题讨论】:

Import MySQL database into a MS SQL Server的可能重复 【参考方案1】:

您可以将其转换为SQL Server 语法:

CREATE TABLE search_by_vehicle (
[id]                int NOT NULL identity,
[vendor]            varchar(255) NOT NULL,
[car]           varchar(255) NOT NULL,
[year]          varchar(255) NOT NULL,
[modification]  varchar(255) NOT NULL,
[param_pcd]         varchar(32) NOT NULL,
[param_dia]         varchar(8) NOT NULL,
[param_nut]         varchar(32) NOT NULL,
[param_bolt]        varchar(32) NOT NULL,
[tyres_factory]     varchar(max) NOT NULL,
[tyres_replace]     varchar(max) NOT NULL,
[tyres_tuning]  varchar(max) NOT NULL,
[wheels_factory]    varchar(max) NOT NULL,
[wheels_replace]    varchar(max) NOT NULL,
[wheels_tuning]     varchar(max) NOT NULL,
PRIMARY KEY  ([id])
)  ;  
INSERT INTO search_by_vehicle (vendor, car, modification, year, tyres_factory, tyres_replace, tyres_tuning, wheels_factory, wheels_replace, wheels_tuning, param_pcd, param_nut, param_bolt, param_dia) 
VALUES( 'Jaguar','S-Type','3.0i','1998','235/50 R17','245/40 R18|245/35 R19','','7.5 x 17 ET45','8 x 18 ET40|8 x 19 ET40','','5*108','12*1.5','','63.3');

SELECT *
FROM search_by_vehicle;

LiveDemo

使用:

特定工具(对于这个特定示例,我使用了一种在线免费工具/不建议在处理敏感数据时使用在线工具) 手工

请记住,并非总是可以 1:1 做到这一点。


wheels_replace 的列似乎包含非原子数据 ('8 x 18 ET40|8 x 19 ET40')。

当您需要获取特定值或需要加入时,可能会出现问题。

【讨论】:

这就解决了。非原子数据是由于管道吗?或者你到底是什么意思

以上是关于如何将mysql 数据库导入到sql server 2008 数据库的主要内容,如果未能解决你的问题,请参考以下文章

sql server的数据如何导入到mysql数据库中?

sql server的数据如何导入到mysql数据库中?

如何将 mysql 转储导入 SQL Server 数据库

将Sql Server中的数据导入到Mysql数据库中

MySQL--将MySQL数据导入到SQL Server

sql Server数据库如何将一个库中的数据导入另一个库中