迁移到SQL Server 2008的MySQL

我有一个简单的MySQL数据库。 它有3个表格。

这里是对他们的创造性声明:

CREATE DATABASE `qcvalues` /*!40100 DEFAULT CHARACTER SET latin1 */ CREATE TABLE `batchinfo` ( `rowid` int(11) NOT NULL AUTO_INCREMENT, `datapath` mediumtext, `analysistime` varchar(50) DEFAULT NULL, `reporttime` varchar(50) DEFAULT NULL, `lastcalib` varchar(50) DEFAULT NULL, `analystname` varchar(150) DEFAULT NULL, `reportname` varchar(150) DEFAULT NULL, `batchstate` varchar(150) DEFAULT NULL, `instrument` varchar(20) DEFAULT NULL, PRIMARY KEY (`rowid`), UNIQUE KEY `rowid_UNIQUE` (`rowid`) ) ENGINE=InnoDB AUTO_INCREMENT=15771 DEFAULT CHARSET=latin1 CREATE TABLE `calibration` ( `rid` int(11) NOT NULL AUTO_INCREMENT, `filename` varchar(100) DEFAULT NULL, `qcname` varchar(50) DEFAULT NULL, `compound` varchar(150) DEFAULT NULL, `response` varchar(50) DEFAULT NULL, `isid` varchar(150) DEFAULT NULL, `isidresp` varchar(150) DEFAULT NULL, `finalconc` varchar(50) DEFAULT NULL, `rowid` int(11) DEFAULT NULL, PRIMARY KEY (`rid`), UNIQUE KEY `rid_UNIQUE` (`rid`) ) ENGINE=InnoDB AUTO_INCREMENT=708947 DEFAULT CHARSET=latin1 CREATE TABLE `qcvalues`.`qvalues` ( `rid` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `compound` varchar(50) DEFAULT NULL, `rt` varchar(50) DEFAULT NULL, `response` varchar(50) DEFAULT NULL, `finalConc` varchar(50) DEFAULT NULL, `qvalue` varchar(50) DEFAULT NULL, `rowid` int(11) DEFAULT NULL, PRIMARY KEY (`rid`), UNIQUE KEY `rid_UNIQUE` (`rid`) ) ENGINE=InnoDB AUTO_INCREMENT=463066 DEFAULT CHARSET=latin1; 

我正在从Excel写这个数据库:

 Set cn = New ADODB.Connection cn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _ "SERVER=kame1;" & _ "DATABASE=qcvalues;" & _ "USER=root;" & _ "PASSWORD=password;" & _ "Option=3" 'lets get the batch info ' ' open a recordset Set rs = New ADODB.Recordset 

将整个mysql数据库迁移到sql server最简单的方法是什么?

微软最近宣布了一个支持从MySql迁移到SQL Server的迁移工具:

微软宣布MySQL的SQL Server迁移助手

我没有看过,但可能值得一试; 这里是该工具的下载页面(带有典型的MS风格的产品名称;-):

Microsoft SQL Server迁移助手for MySQL v1.0

也许在SQL Server中设置一个空的数据库,然后在Management Studio中使用导入向导来导入数据,并作为副作用,可选地生成CREATE TABLE语句。

有关详细信息,请参阅导出/导入向导中的MS文档

如果您正在查找SQL语句以匹配您发布的内容:

 CREATE DATABASE qcvalues CREATE TABLE batchinfo ( rowid int IDENTITY(1,1) NOT NULL, datapath varchar(max), analysistime varchar(50) DEFAULT NULL, reporttime varchar(50) DEFAULT NULL, lastcalib varchar(50) DEFAULT NULL, analystname varchar(150) DEFAULT NULL, reportname varchar(150) DEFAULT NULL, batchstate varchar(150) DEFAULT NULL, instrument varchar(20) DEFAULT NULL , CONSTRAINT [PK_Batch] PRIMARY KEY CLUSTERED ([rowid] ASC) ) 
  • 引用蜱需要被删除
  • 主键声明是不同的
  • 自动递增的值是不同的

冲洗+重复你的其他两张桌子,你很好。

然后,您将需要从适合于SQL Server的Excel中获取新的连接string 。