Проблема с доступом к базе данных MySQL через ODBC
Вопрос
OdbcDataReader q = dbc.Query("SELECT * FROM `posts` WHERE `id`=" + id.ToString());
if (q.RecordsAffected < 1)
{
this.Exists = false;
}
else
{
this.Exists = true;
this.Author = q.GetString(6);
}
Сервер возвращает No data exists for the row/column.
Моя таблица базы данных структурирована следующим образом (скриншот из phpMyAdmin) http://1.img.anyhub.net/1243660397_6485910f8b3fc9ee3e2d93831ad554fd.png
Кстати, dbc
это просто мой класс подключения к базе данных;тот самый Query()
функция заключается в следующем:
public OdbcDataReader Query(string QueryStr)
{
OdbcCommand q = new OdbcCommand(QueryStr, conn);
OdbcDataReader r = q.ExecuteReader();
return r;
}
Решение
Я думаю, вам следует использовать DataReader.Метод чтения, прежде чем вы сможете получить из него данные.
q.Read();
this.Author = q.GetString(6);
И я рекомендую использовать блок using с вашими объектами DataReader и Command
Не связан с StackOverflow