webForumDet fria alternativet

recordset

14 svar · 336 visningar · startad av anders4u

anders4uMedlem sedan apr. 2002271 inlägg
#1

Hej där.

kan man inte ha flera recordset öppna samtidigt?

kram

VideMedlem sedan dec. 19998 577 inlägg
#2

Ja

anders4uMedlem sedan apr. 2002271 inlägg
#3

ja?
betyder det att man inte kan det.

men om man stänger recordset och connection då?

funkar inte det heller.

NETworkMedlem sedan juni 20011 732 inlägg
#4

Pratar vi asp.net eller gamla asp nu?

anders4uMedlem sedan apr. 2002271 inlägg
#5

asp.net
jag öppnar connection och visar en del av databasen.

men längre ner vill jag hämta fler saker från databasen.
jag håller connection-objektet öppet.

ska jag stänga recordset längre upp?

hur gör jag för att skriva nedan-kod, andra gången "andra frågan"?
OleDbCommand cmd = new OleDbCommand(sql, conn);
OleDbDataReader rs = cmd.ExecuteReader();

NickemannenMedlem sedan aug. 20003 575 inlägg
#6

OleDbDataReader rs2 = cmd.ExecuteReader();

Så kan du använda nsäta

DinoMedlem sedan sep. 20011 914 inlägg
#7

Man måste väl stänga en reader för att kunna köra en annan.

anders4uMedlem sedan apr. 2002271 inlägg
#8

skulle man kunna göra så här andra gången?
fungerar inte för mig.
OleDbCommand cmd = new OleDbCommand(sql2, conn);
OleDbDataReader rs2 = cmd.ExecuteReader();

anders4uMedlem sedan apr. 2002271 inlägg
#9

eller hur gör man?
:(

PatrikBMedlem sedan mars 20002 836 inlägg
#10

ngt sådant här:

OleDbCommand cmd = new OleDbCommand(sql, conn); 
OleDbDataReader rs = cmd.ExecuteReader();

'## -- gör vad du ska med rs --

'## -- stäng rs innan du kan använda en annan reader --
rs.Close();

'## -- skapa den andra readern --

'## -- ny sql fråga att köra. ändra commandtext i commandobjectet --
cmd.CommandText = strNySql;
OleDbDataReader rs2 = cmd.ExecuteReader();

'## -- gör vad du ska med rs2. stäng när du är klar med rs2 --

cya,
PatrikB

anders4uMedlem sedan apr. 2002271 inlägg
#11

har provat och provat.
men detta funkar inte.

string KursAttVisa = Request.QueryString["kurs"].ToString();
					string sql2 = "";
					sql2 += "SELECT * FROM Kurser where KursId=";
					sql2 += KursAttVisa;

					
					cmd.CommandText = sql2;
					OleDbDataReader rs2 = cmd.ExecuteReader();
					rs2.Read();
					rs2.Close();
JosefMedlem sedan mars 20023 561 inlägg
#12
string KursAttVisa = Request.QueryString["kurs"].ToString();
					string sql2 = "";
					sql2 += "SELECT * FROM Kurser where KursId=";
					sql2 += KursAttVisa;

Varför gör du det så krångligt??

string sql2 = "SELECT * FROM kurser WHERE kursid = " & Request.QueryString["kurs"].ToString() & "";
DinoMedlem sedan sep. 20011 914 inlägg
anders4uMedlem sedan apr. 2002271 inlägg
#14

tackar!
ska kolla på länkarna.
:)

NETworkMedlem sedan juni 20011 732 inlägg
#15

Lite ordmärkeri bara, på .net finns inga recordsets utan dessa har ersatts med datasets. :)

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