0

我正在调试一个旧的 C# 程序,该程序旨在接收 .dbf 文件,连接到数据库(出于某种原因*),然后以更人性化、格式化的方式输出这些 .dbf 文件(Excel 文件) . 这个程序的一个发布版本(几年前)运行良好,但有一些需要解决的问题。因此,我尝试调试可用的 Visual Studio 解决方案。

我在连接到数据库部分时遇到问题,因为程序返回上述错误。

我对 MySQL 没有太多经验,但我会尽力提供所有细节。

该程序正在 Visual Studio 2005 中调试。它可能也是在那里创建的,尽管有些东西看起来已经过时了。我的操作系统是 Windows 7,32 位。

我使用的是 MySQL 版本 3.23.42,并安装在运行程序的计算机上。这里没有网络设置,因为数据库可能存储临时数据,然后将其输出到 Excel 文件。

我不确定这是否正确(ODBC?而不是 SQL?),但这是在程序的顶部:

using System;
using System.Data;
using System.Data.Odbc;
using System.Windows.Forms;

我还安装了 MyODBC 3.51.05。

这是连接字符串(注意:我没有写这个,它已经在那里了):

string str_connection="DRIVER={MySQL ODBC 5.1 Driver};SERVER="localhost";DATABASE="TKCinterface";UID="ids";PASSWORD="ids";OPTION=3";

该程序在尝试打开连接时失败,我认为这与连接字符串有关。

我尝试通过 Tools -> Connect To Database 手动连接失败,或者至少是我选择的选项。

  • 数据源:Microsoft ODBC 数据源
  • 数据提供者:用于 ODBC 的 .NET Framework 数据提供者

我在随后的窗口中看不到数据库。

我可以通过命令行打开 MySQL,还可以看到数据库(TKCInterface),所以我不确定问题是什么。

奇怪的是,项目的References 中没有任何引用MySQL 的内容。不过,整个事情都很好。

对此的任何帮助将不胜感激。谢谢。

问候, Zack_Falcon

4

2 回答 2

1

指定连接到 mysql 的端口

将连接字符串更改为

 string str_connection="DRIVER={MySQL ODBC 5.1 Driver};SERVER="localhost";DATABASE="TKCinterface";UID="ids";PASSWORD="ids";Port=3306;";

希望这可以帮助

于 2013-02-20T08:33:42.233 回答
0

您肯定需要 mysql.data 和 mysql.data.entity 在您的参考列表中。

从这里下载库http://dev.mysql.com/downloads/connector/net/

于 2013-02-20T09:23:36.607 回答