Avatar billede mrg Nybegynder
20. august 2001 - 13:12 Der er 5 kommentarer og
1 løsning

UltraDev - multiple recordsets

Hej,

Jeg har et tilbagevendende problem: Multiple Recordsets i UltraDev...

Jeg har en connection-fil der ser således ud:
<%
\' FileName=\"Connection_ado_conn_string.htm\"
\' Type=\"ADO\"
\' HTTP=\"true\"
\' Catalog=\"\"
\' Schema=\"\"
MM_conn1903_STRING = \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"database/syvmand.mdb\") & \";\" %>

Og så definerer den recordsets som følger:
<%
set rsTrainer = Server.CreateObject(\"ADODB.Recordset\")
rsTrainer.ActiveConnection = MM_conn1903_STRING
rsTrainer.Source = \"SELECT Username, Dato, Overskrift, Nyhedstext FROM trainernyt ORDER BY ID DESC\"
rsTrainer.CursorType = 0
rsTrainer.CursorLocation = 2
rsTrainer.LockType = 3
rsTrainer.Open()
rsTrainer_numRows = 0
%>
<%
set rsNyt = Server.CreateObject(\"ADODB.Recordset\")
rsNyt.ActiveConnection = MM_conn1903_STRING
rsNyt.Source = \"SELECT Forfatter, Dato, Overskrift, Nyhedstext FROM nyheder ORDER BY ID DESC\"
rsNyt.CursorType = 0
rsNyt.CursorLocation = 2
rsNyt.LockType = 3
rsNyt.Open()
rsNyt_numRows = 0
%>

osv....

Dette giver dog lidt problemer:
Could not use \'(unknown)\'; file already in use.

Den er altså sur 2. gang der refereres til ActiveConnection ...

Hvad kan jeg gøre???? Skrive de forskellige set-sætninger sammen?
Avatar billede webbe Nybegynder
20. august 2001 - 13:24 #1
Istedet for at lade UltraDev bestemme koden kan du gøre følgende:

Set Connect = Server.CreateObject(\"ADODB.Connection\")
Connect.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"database/syvmand.mdb\") & \";\"

rs1 = \"SELECT Username, Dato, Overskrift, Nyhedstext FROM trainernyt ORDER BY ID DESC\", Connect, 2, 3

rs2 = \"SELECT Forfatter, Dato, Overskrift, Nyhedstext FROM nyheder ORDER BY ID DESC\", Connect, 2, 3


Jeg bruger selv det med at åbne flere recordsets på én gang  - der bruger jeg ovenstående uden problemer!
Avatar billede mrg Nybegynder
20. august 2001 - 13:29 #2
takker...jeg prøver og vender tilbage med nogle point...
Avatar billede mrg Nybegynder
20. august 2001 - 13:35 #3
Nu har jeg lavet følgende...
-------------------------------------
<%
Set Connect = Server.CreateObject(\"ADODB.Connection\")
Connect.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"database/syvmand.mdb\") & \";\"
rsTrainer = \"SELECT Username, Dato, Overskrift, Nyhedstext FROM trainernyt ORDER BY ID DESC\", Connect, 2, 3
rsNyt = \"SELECT Forfatter, Dato, Overskrift, Nyhedstext FROM nyheder ORDER BY ID DESC\", Connect, 2, 3
rsTopsc = \"SELECT Navn, Maal FROM spillere ORDER BY Maal DESC\", Connect, 2, 3
rsBode = \"SELECT Navn, Boeder, Seneste_bode FROM spillere ORDER BY Boeder DESC\", Connect, 2, 3
rsfjol = \"SELECT * FROM citater ORDER BY id DESC\", Connect, 2, 3
rslink = \"SELECT Linktekst, url FROM links ORDER BY id DESC\", Connect, 2, 3
%>
------------------------------------

Nu får jeg så fejlmeddelsen:


Expected end of statement

/7/Default.asp, line 6

rsTrainer = \"SELECT Username, Dato, Overskrift, Nyhedstext FROM trainernyt ORDER BY ID DESC\", Connect, 2, 3
--------------------------------------------------------------------------------------------^
Avatar billede webbe Nybegynder
20. august 2001 - 13:48 #4
UPS!

Min fejl - du kan gøre to ting nu....enten

rsTrainer = \"Select.....\"
Connect.Execute(rsTrainer)

Eller

Set rsTrainer = Server.CreateObject(\"ADODB.Recordset\")
rsTrainer.Open \"SELECT.....\", Connect, 2, 3
Avatar billede webbe Nybegynder
20. august 2001 - 13:50 #5
Jeg ville nok gøre følgende:

Set Connect = Server.CreateObject(\"ADODB.Connection\")
Connect.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"database/syvmand.mdb\") & \";\"
Set rsTrainer = Server.CreateObject(\"ADODB.Recordset\")
rsTrainer.Open \"SELECT Username, Dato, Overskrift, Nyhedstext FROM trainernyt ORDER BY ID DESC\", Connect, 2, 3
Set rsNyt = Server.CreateObject(\"ADODB.Recordset\")
rsNyt.Open \"SELECT Forfatter, Dato, Overskrift, Nyhedstext FROM nyheder ORDER BY ID DESC\", Connect, 2, 3
Set rsTopscr = Server.CreateObject(\"ADODB.Recordset\")
rsTopsc.Open \"SELECT Navn, Maal FROM spillere ORDER BY Maal DESC\", Connect, 2, 3
Set rsBode = Server.CreateObject(\"ADODB.Recordset\")
rsBode.Open \"SELECT Navn, Boeder, Seneste_bode FROM spillere ORDER BY Boeder DESC\", Connect, 2, 3
Set rsFjol = Server.CreateObject(\"ADODB.Recordset\")
rsfjol.Open \"SELECT * FROM citater ORDER BY id DESC\", Connect, 2, 3
Set rsLink = Server.CreateObject(\"ADODB.Recordset\")
rslink.Open \"SELECT Linktekst, url FROM links ORDER BY id DESC\", Connect, 2, 3
Avatar billede mrg Nybegynder
20. august 2001 - 14:03 #6
YES!!

Jeg takker af hjertet!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester