webForumDet fria alternativet

No data exists for the row/column.

1 svar · 253 visningar · startad av Sjodahl

SjodahlMedlem sedan maj 20033 218 inlägg
#1

Hej!

Ett annat problem som jag inte riktigt kan se vad det beror på.

Kör följande kod:

protected void bnChangeUnit_Click(object sender, EventArgs e)
{
dbController.dbController dbCtrl = new dbController.dbController();
string SQL = "SELECT fSite FROM tblconfig WHERE fId="+ddUnits.SelectedValue;
OdbcDataReader myReader = dbCtrl.getData(SQL);
fUpdate_dts.Text = myReader.GetString(0);
}

Skriver jag ut SQL frågan, även testat göra den i databasen så jag ser att jag får tillbaka en row:

SELECT fSite FROM tblconfig WHERE fId=1018

fSite är en "char(40)" i databasen, även testat med GetChar istället.
Testar jag med myReader.HasRows så returnerar den true.

Istället för att skriva tex: myReader.GetString(0);
Kan jag skriva myReader["columnamn"] tro?

PMedlem sedan jan. 20012 204 inlägg
#2

Måste man inte göra en read på dataReadern, har för mig det. Så ngt i stil med:

while(reader.Read()) // eller skippa read om du bara har en rad, har du bara en rad och en kolumn så kan du använda getScalar() istället.
{
Console.Write(reader[0].ToString());
}

Ja man kan använda reader["kolumnnamn"], skriver du en "[" efter reader i visual studio så kommer det nog upp lite text som visar att det går.

119 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
116 ms — hämta tråd, inlägg och bilagor (db)