문제

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의 Screencap)http://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.Read 메소드를 사용해야한다고 생각합니다.

q.Read(); 
this.Author = q.GetString(6);

DataReader 및 Command Objects와 함께 사용 블록을 사용하는 것이 좋습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top