使用codesmith无法连接mysql问题

Posted 一棵代码树

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用codesmith无法连接mysql问题相关的知识,希望对你有一定的参考价值。

最近研究codesmith的用法,遇到了如题的问题,记录一下解决的方法。

1.问题描述:

在codesmith中选择mysqlSchemaProvider并连接数据库时,会报以下错误:
Test failed. 找不到请求的 .Net Framework 数据提供程序。可能没有安装。

2.解决方案

访问http://dev.mysql.com/downloads/connector/net/,下载并安装mysql-connector-net-x.x.x.msi。其中x.x.x是版本号,直接下载最新版即可.

复制MySql.Data.dll到指定目录:

技术分享图片

修改machine.config配置:C:WindowsMicrosoft.NETFrameworkv2.0.50727CONFIG下,修改节点DbProviderFactories,增加下面配置(注意版本号):

    <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=8.0.13.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

版本号:

技术分享图片

连接数据库的时候,连接字符串有自己的格式,如下:

    1:CodeSmith选中链接类型是:ADOXSchema
    2:无密码的Access链接为:
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:hhdb.mdb;
    3:有密码的Access链接:
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:hhdb.mdb;
    Jet OLEDB:Database Password=1111
    
    Sql数据库
    
    server=192.1.1.14;User ID=test;Password=test;database=test;
    Pooling=TRUE;Max Pool Size=1000;Connection Reset=FALSE
    
    Oracle数据库
    1:下载提供的ORACAL 驱动
    2:Data Source=192.1.1.14;Data Source=test;Password=test;User ID=test
    
    MySql数据库
    
    server=127.0.0.1;User ID=root;Password=......;database=myProject;

技术分享图片

3.连接成功

技术分享图片


以上是关于使用codesmith无法连接mysql问题的主要内容,如果未能解决你的问题,请参考以下文章

完美解决CodeSmith无法获取MySQL表及列Description说明注释的方案

解决CodeSmith无法获取MySQL表及列Description说明注释的方案

CodeSmith 简单使用和常用模板

CodeSmith无法获取Oracle表注释

CodeSmith 多模板按目录树批量自动生成代码

CodeSmith7.0.2连接Oracle10.2