webForumDet fria alternativet

Flera frågor på ett kommando

.NET

1 svar · 261 visningar · startad av Hyzac

Medlem sedan mars 200475 inlägg
Frågan#1

Jag har för mig om att jag läst nånstans att man kan köra flera frågor på ett kommandoobjekt. Jag har dock inte hittat den informationen igen. Men är det nån som vet om att istället för att göra så här:

Dim cmd as new sqlCommand("SELECT1...")
...
cmd.Fill(ds1)
...

Dim cmd2 as new sqlCommand("SELECT2...")
...
cmd2.Fill(ds2)
...

Så kör man:

dim cmd as new sqlCommand("SELECT1 : SELECT2")
...
cmd.Fill(ds1)
?cmd:nextquery?
cmd.Fill(ds2)

Förstår ni vad jag menar?

Medlem sedan nov. 20041 189 inlägg
#2

Ja, det stämmer att man kan återanvända.

        MySqlCommand objCmd = new MySqlCommand("SELECT one FROM ...", objDefaultConn);
        MySqlDataAdapter objDa = new MySqlDataAdapter(objCmd);
        DataSet ds1, ds2;
        objDa.Fill(ds1);
        objCmd.CommandText = "SELECT two FROM ...";
        objDa.SelectCommand = objCmd;
        objDa.Fill(ds2);

borde funka.
Grejen är alltså att du sätter en ny SQL sträng på ditt command och sedan kör objRdr = objCmd.ExecuteReader(); eller vad du nu vill använda en gång till.

252 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)