c# - Windows 窗体应用程序 - MySQL - 无法从 'string' 转换

标签 c# mysql visual-studio

我对 C# 语言相当陌生,同时使用教程来帮助更好地理解我在尝试制作一个简单的“按钮”来连接到 MySQL 数据库时遇到了以下情况。

我已在 Visual Studio 2013 中安装了 MySQL Connector .NET 6.9.6 引用和 MySQL Connector for ODBC (5.3.4),但出现以下错误:

The best overloaded method match for 'MySql.Data.MySqlClient.MySqlDataAdapter.MySqlDataAdapter(MySql.Data.MySqlClient.MySqlCommand)' has some invalid arguments.

Argument 1: cannot convert from 'string'to 'MySql.Data.MySqlClient.MySqlCommand'

不确定如何纠正它们,有人可以指出我正确的方向吗?我做了一些研究,但似乎还没有找到答案。

我的代码如下:

            try
             {
                 string mySqlConnection = "datasource=db;port=3306;username=usr;password=Pswd";
                 MySqlConnection mySqlConn = new MySqlConnection (mySqlConnection);
                 MySqlDataAdapter myDataAdapter = new MySqlDataAdapter (mySqlConnection);
                 myDataAdapter.SelectCommand = new MySqlCommand (" Select * database.edata ;", mySqlConn);
                 MySqlCommandBuilder cb = new MySqlCommandBuilder (myDataAdapter);
                 mySqlConn.Open();
                 DataSet ds = new DataSet ();
                 MessageBox.Show("Connected to Database");
                 mySqlConn.Close();
             }
             catch (Exception ex)
                 {
                      MessageBox.Show (ex.Message);
                 }
         }

出于显而易见的原因,我替换了正确的连接详细信息,并连接到远程 MySQL 服务器而不是本地服务器。

最佳答案

您不应在 MySqlDataAdapter 构造函数中使用连接字符串。无论有没有连接,您都需要使用您的命令。喜欢;

MySqlConnection mySqlConn = new MySqlConnection (mySqlConnection);
MySqlCommand cmd = new MySqlCommand("Select * from database.edata");
cmd.Connection = mySqlConn;
MySqlDataAdapter myDataAdapter = new MySqlDataAdapter(cmd);

看起来它没有一个以string作为参数的构造函数,但它有一个MySqlCommand。顺便说一句,您忘记了 sql 查询中的 FROM 部分。

并且不要忘记使用 using 语句自动处理您的连接、命令和 adwapter,而不是手动调用 Close 方法。

关于c# - Windows 窗体应用程序 - MySQL - 无法从 'string' 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31230445/

相关文章:

c# - 输出安全或输入安全的类型是什么意思?

c# - DataTable 表达式无法解释标记 '!'

php - 检查 MySQL 服务器是否能够接受连接

.net - 如何从powershell构建VS解决方案文件夹

c# - Tab 控件中的文本换行

c# - 没有大括号的for循环的语法?

java - playframework 2.4.2 ebean 集成

c# - 来自 mysql 查询的组合框项目每秒刷新一次

c# - 如何检查 bool 列表中的值?

c++ - Eigen log 和 exp 函数类型转换错误