Mar*_*cus 0 c# mysql connector
您好,我在阅读时遇到问题MySqlDataReader。我尝试更改while()为if(),然后它起作用了。所以我做错了while (Reader.Read())。谢谢你的回答。(今天的另一个问题已解决,评论的人帮助了我xd)
using (MySqlCommand cmd = new MySqlCommand
("SELECT * FROM `citationer`", mysqlCon))
{
try
{
MySqlDataReader Reader = cmd.ExecuteReader();
while (Reader.Read()) // this part is wrong somehow
{
citationstexter.Add(Reader.GetString(loopReading)); // this works
loopReading++; // this works
}
Reader.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
您的问题是使用loopReading参数 to GetString。此参数应该是从零开始的列序号(列号),但您要为读取的每一行增加它。
有关更多信息,请参见此处:http : //msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getstring.aspx
您应该将 0 用于引文表的第一列,将 1 用于第二列,以此类推。
此外,使用
using(MySqlDataReader Reader = cmd.ExecuteReader())
{
...
}
Run Code Online (Sandbox Code Playgroud)
就像您为 mySqlCommand 对象所做的那样以保存内存泄漏(但这不是您的问题。)
| 归档时间: |
|
| 查看次数: |
28813 次 |
| 最近记录: |