hhhh2010

博客园 首页 新随笔 联系 订阅 管理

原文地址:https://www.cnblogs.com/tinyjian/p/6235014.html;https://www.cnblogs.com/tinyjian/p/6235397.html

系统环境:win10专业版,.NET版本4.0

VS版本:2013 旗舰版

旧环境:EF5+SQLserver2012

迁移后环境:EF6+Mysql5

使用工具:

Navicat Premium_11.2.7简体中文版。做MSSQL(SQLserver)→Mysql 直接导入操作。

链接:http://download.csdn.net/detail/ahgaoyong/9482314

 

mysql-for-visualstudio-1.2.6.msi,mysql-connector-net-6.9.9.msi。VS用于链接mysql的插件。

链接:http://dev.mysql.com/downloads/windows/visualstudio/http://dev.mysql.com/downloads/connector/net/6.9.html

操作步骤

一、使用Naicat Premium将数据从MSSQL导入到Mysql

新建连接时可以选择数据库类型

准备好mssql和mysql的数据库

先在mysql中新建一个数据库

新建好了之后, 双击使其图标变成有颜色的,点击右侧的"导入向导"

选择ODBC格式

点左边的"..."呼出连接属性,并选择"OLE DB Provider", 如果你是本地数据库,请尝试最后一项"Native Client"

 

配置mssql连接信息和数据库,记得"测试连接"

完成后可以选择那些表需要导出来

后续操作可以对表名进行更改, 对每个表的字段进行修改.

1
2
3
Tip:
默认情况不会设置主键(也就是没有主键和自增属性)
最后在mysql中创建的表名,都是小写的mssql中bit → mysql中tinyint,更多类型转换请自行尝试

导入后可看到数据:


    如果mssql与mysql编码不一样,则会乱码, 请自行调整编码, 推荐调整为utf8模式.

二、在VS中添加Mysql数据源的ADO.NET实体数据模型

  

下载并按照“一”中的mysql-for-vs、mysql-connector。

之后在nuget控制台中

输入以下命令行,安装EF和Mysql.Data

Install-Package EntityFramework

Install-Package MySql.Data.Entity

之后会自动在App.config中添加配置项, 如果没有,则手动添加App.config为:

1
2
3
4
5
6
<entityFramework>
  <providers>
    <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
    <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
  </providers>
</entityFramework>

之后可以在新建ADO.NET实体模型中找到:

如果你出现

极有可能是App.config配置错误, 也有可能是运气问题, 比如我在View层中可以新建,但是在model层新建不了, 于是我在view层中新建好再复制到model层, 接着view层也可以新建了, 貌似是vs的bug.

可以试试上述App.config的配置, 或是参考文章:http://blog.csdn.net/niewq/article/details/41877301

posted on 2018-11-03 14:55  hhhh2010  阅读(336)  评论(0编辑  收藏  举报