webForumDet fria alternativet

från 2 olika tabeller?

ASP

4 svar · 213 visningar · startad av medialabs

Medlem sedan mars 20023 686 inlägg
Frågan#1

Kom att tänka på att det är ju ganska onödigt att öppna samma databas 2 gånger på samma sida, så nu undrar jag hur jag lägger in och får det att fungera.

SQL = "SELECT Count(*) From tblmemo WHERE struser  = " & session("id")

antal = RecSetPlus.Fields(0)

i


<%
Set ConnectPlus = Server.CreateObject("ADODB.Connection")
ConnectPlus.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=g:\home\medialabs.se\plus.mdb"

SQL = "SELECT * From tbluppgifter WHERE id = " & session("id")
Set RecSetPlus = ConnectPlus.Execute(SQL)
%>

skriva ut en ett par recset..

<%
RecSetPlus.Close
Set RecSetPlus = nothing
ConnectPlus.Close
Set ConnectPlus = nothing
%>
Medlem sedan dec. 200012 464 inlägg
#2
SQL = "SELECT k1,k2,( SELECT Count(*) From tblmemo WHERE struser  = id) From tbluppgifter WHERE id = " & session("id")

Ange alltid vilka kolumner du vill hämta istf för select *

Medlem sedan mars 20023 686 inlägg
#3
<%
Set ConnectPlus = Server.CreateObject("ADODB.Connection")
ConnectPlus.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=g:\home\medialabs.se\plus.mdb"

SQL = "SELECT * From tbluppgifter WHERE id = " & session("id")
Set RecSetPlus = ConnectPlus.Execute(SQL)
%>

<%RecSetPlus("strfornamn")%> <%RecSetPlus("strefternamn")%>

osv...

lite längre ned på sidan igen så öppnar jag en anslutningn till samma databas fast till en annan tabell
för att räkna hur många poster den inloggade användaren har i den tabellen.

<%
Set ConnectPlus1 = Server.CreateObject("ADODB.Connection")
ConnectPlus1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=g:\home\medialabs.se\plus.mdb"
SQL = "SELECT Count(*) From tblmemo WHERE struser  = " & session("id")
Set RecSetPlus1 = ConnectPlus1.Execute(SQL)

[b]antal = RecSetPlus1.Fields(0)[/b]
%>

<a href="/Plus/memo.asp" class="Pluslink"><%response.write [b]antal[/b]%> nya memo </a> <br>

<%
RecSetPlus1.Close
Set RecSetPlus1 = nothing
ConnectPlus1.Close
Set ConnectPlus1 = nothing
%>

och längst ned på sidan så har jag

<%
RecSetPlus.Close
Set RecSetPlus = nothing
ConnectPlus.Close
Set ConnectPlus = nothing
%>

för att stänga den första databasanslutningen. Jag vill helst ha dem 2 olika SQL-frågorna på varsin rad i den första databaskopplingen  för att jag själv tycker att jag har mer koll på det så. för att slippa öppna samma databas flera gången på samma sida.
Medlem sedan dec. 200012 464 inlägg
#4

Nu förstår jag inte vad som är problemet. Varför vill du ha två rader?

Medlem sedan mars 20023 686 inlägg
#5

LarsG skrev:

Nu förstår jag inte vad som är problemet. Varför vill du ha två rader?

Så här,

<%
Set ConnectPlus = Server.CreateObject("ADODB.Connection")
ConnectPlus.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=g:\home\medialabs.se\plus.mdb"

set RecSetPlus = ConnectPlus.execute("SELECT * From tbluppgifter WHERE id = " & session("id"))

set RecSetMemo = ConnectPlus.execute("SELECT Count(*) From tblmemo WHERE struser  = " & session("id"))

%>

Nu till en följd fråga, hur skriver jag sedan ut hur många poster eller memo som den har hittat i databasen med RecSetMemo ??

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