【发布时间】:2013-03-28 01:47:35
【问题描述】:
我有一个奇怪的“错误/错误”,在 .NET 连接器上只返回一条记录,而有 5 条记录。 MySQL 命令行也返回 1。这是我真正坚持的代码,我尝试创建一个客户端-服务器并让客户端从服务器计算机上的数据库登录:
代码:
string strConnect = "server=localhost;user=root;password=xxxx;database=MoopleDEV";
string query = "SELECT name FROM accounts;";
using (MySqlConnection connection = new MySqlConnection(strConnect))
using (MySqlCommand command = new MySqlCommand(query, connection))
using (MySqlDataReader reader = command.ExecuteReader())
{
connection.Open();
while (reader.Read())
{
Console.WriteLine(reader.GetString("name"));
}
connection.Close();
}
注意:它还在 MySQL 命令行客户端仅返回“iVision”。有谁知道该怎么做? Ps:它不会崩溃或返回任何异常。
【问题讨论】:
-
您确定查看的是同一个数据库吗?您谈论“登录到服务器计算机”,但您的连接字符串指定了“localhost”(您自己的计算机)
-
哦,是的,服务器和客户端是在我自己的计算机上调试的,并且我的计算机上正在运行 MySQL DB。 (这是服务器程序将在服务器计算机上运行的想法)
-
你为什么要使用
reader.GetString我已经看到太多问题了确保您确实在查看正确的 DBdatabase=MoopleDEV可能不正确或指向物理机上的不同 IP 地址或位置 -
还有 reader.GetString() 需要一个整数作为列索引而不是字符串名称(至少在 SqlDataReader 中)
-
@Steve 您可以输入索引或列名。
标签: c# mysql mysql-connector