Vad är fel på denna koden! ?? (EDIT: Är inget fel... trodde det tidigare) Är du säker på att du kör mot rätt server, databas och tabell? Verkar väldigt konstigt annars... mmm. Är dessvärre säker på detta. Jaha!Fylla ett dataset mot MySQL
string selectSQL;
selectSQL = "SELECT * FROM myTable";
MySqlConnection con = new MySqlConnection("Server=localhost;Database=db;Uid=User;Pwd=pwd");
MySqlCommand cmd = new MySqlCommand(selectSQL, con);
MySqlDataAdapter adapter = new MySqlDataAdapter(cmd);
DataSet ds = new DataSet();
try
{
con.Open();
adapter.Fill(ds, "myTable");
}
catch (Exception err)
{
Label1.Text = err.Message;
}
finally
{
con.Close();
}
Koden genererar inte några connection fel eller liknande. Debuggar jag denna och kollar värdet på ds efter den utfört ds.Fill() raden - så är datasettet TOMT! Jag har en post i tabellen.
Däremot - så fyller den på med kolumnerna rätt (anger ju SELECT * ... ) Men dessvärre inte med några rader? Hur kan det bli så?
se post #3 för att utläsa felet.
//FL
Sv: Får ett tomt dataset tillbaka :/ Jätte lätt fel förmodligen... :/
/JohanSv:Får ett tomt dataset tillbaka :/ Jätte lätt fel förmodligen... :/
Provade som sagt att prova byta till root för att verifiera detta (samma problem uppstod även då).
Provade byta namn på db och då smällde det.
Men det som förvånar mig som sagt är ju varför den uppenbarligen läser in kollumnnamnen från databasen och lägger längst upp i griden... Men som sagt, i övrigt är den bara "grå". Vilket inte är fallet när jag kör frågan via MySqlQuery Browser (från samma användare).
//FL.Sv: Får ett tomt dataset tillbaka :/ Jätte lätt fel förmodligen... :/
Då får man ta på sig dumstruten!
Felet jag hade var att av någon anledning. De värden jag såg i Querrybrowsern låg "cashade" på något sätt.. Jag startade om browsern och körde en select till - så var det TOMT i tabellen!
Denna tråd kan fortsättningsvis ses som ett skolboksexempel på hur man upprättar ett dataset till MySQL server.
//FL