0

我正在尝试这个

string query = "SELECT * FROM teams ORDER BY name";

using(MySqlConnection dbConn = new MySqlConnection(conn))
{
    MySqlCommand cmd = new MySqlCommand(query, dbConn);
    MySqlDataReader dataReader = cmd.ExecuteReader();

但是它在 MysqlCommand 行上返回一个错误,说 Connection 必须是有效的并且是打开的。有人知道我在做什么错吗?

4

1 回答 1

10

您尚未在代码中打开连接,您应该调用

dbConn.Open();

using它与声明无关。

string query = "SELECT * FROM teams ORDER BY name";
using(MySqlConnection dbConn = new MySqlConnection(conn))
{
    MySqlCommand cmd = new MySqlCommand(query, dbConn);
    dbConn.Open();//here **
    MySqlDataReader dataReader = cmd.ExecuteReader();

using语句仅确保您的连接对象将在作用域之后被释放,它不会打开连接本身。

于 2013-11-13T20:20:49.350 回答