webForumDet fria alternativet

Access databas grunder

8 svar · 250 visningar · startad av mattiasnordin

mattiasnordinMedlem sedan maj 20012 080 inlägg
#1

Hej. Här kommer en nybörjarfråga.

Vad är syntaxen för att få en ASP sida att läsa ur en access databasfil. Båda filerna ligger i samma katalog på min server.

Skriv gärna ett exempel och förklara vad som gör vad.

------------------
http://www.absolut.nu

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Först så skall man öppna en connection till databasen, här finns ett exempel på det
http://cgi.webforum.nu/wf/arkiv/asp_faq.html#fel_1

sen så ställer man en sql-fråga för att hämta data. För att hämta data så använder man ett recordset

'connect är vårt connecton-objekt
'som har öppnats enligt exempel i
'länken
'
'bygg sql-fråga
sql = "select aleb,caleb from ogrish"
'skapa recordset
set rs = connect.execute(sql)

'hämta alla poster

while not rs.eof
'skriv ut värdet i kolumnen aleb
response.write rs("aleb") & "<br>"
'skriv ut värdet i kolumnen caleb
response.write rs("caleb") & "<br>"
'flytta till nästa post i recordsetet
rs.movenext
'om det är slut på poster så
'sätts eof (END OF FILE) till sant 
'och då avslutas loopen
wend
'stäng recordset
rs.close
'stäng connection
connect.close

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 19 nov 2001]

mattiasnordinMedlem sedan maj 20012 080 inlägg
#3

Tackar för svaret. Detta är mitt första försök. Som nybörjare inom detta område får jag lita mig till trial and error tekniken. Jag får följande fel. För ni som kan är det säkert uppenbart vad som fattas. Tacksam för hjälp så att jag kommer igång...

Microsoft VBScript runtime error '800a01a8' 

Object required: 'connect' 

/web2/mattias/foto_album/ph_databas.asp, line 19

Accessdatabasen (foto_album.mdb)och ASP sidan (ph_databas.asp) ligger i samma katalog på min II5 server.

<%
'***** Skapar Connection-objektet *****'
Set Databas = Server.CreateObject("ADODB.Connection")

'***** Specifierar sökvägen *****'
MdbFilePath = Server.MapPath("foto_album.mdb")

'***** öppnar databasen *****'
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"

'connect är vårt connecton-objekt
'som har öppnats enligt exempel i
'länken
'
'bygg sql-fråga
sql = "select * from fotoalbum"
'skapa recordset
set rs = connect.execute(sql)
'hämta alla poster

while not rs.eof
'skriv ut värdet i kolumnen aleb
response.write rs("bild") & "<br>"
'skriv ut värdet i kolumnen caleb
response.write rs("rubrik") & "<br>"
'flytta till nästa post i recordsetet
rs.movenext
'om det är slut på poster så
'sätts eof (END OF FILE) till sant 
'och då avslutas loopen
wend
'stäng recordset
rs.close
'stäng connection
connect.close
%>

------------------
http://www.absolut.nu

[Redigerat av mattiasnordin den 02 dec 2001]

jorgenMedlem sedan feb. 20012 412 inlägg
#4

Hej, du använder 2 namn på ditt connectionobject, connect och Databas. Ändra så du får samma på alla ställen.

mvh Jörgen :)

------------------
Varför bråka när man kan kramas?

[Redigerat av jorgen den 02 dec 2001]

mattiasnordinMedlem sedan maj 20012 080 inlägg
#5

Hmmm. Jörgen kan du vara lite tydligare. Hittar inte något fel.
Mvh Mattias

------------------
http://www.absolut.nu

iceM2Medlem sedan mars 2001243 inlägg
#6

har bytt ut namnet databas mot connect, du använder två olika namn på samma sak. testa denna kod:

<%
'***** Skapar Connection-objektet *****'
Set Connect = Server.CreateObject("ADODB.Connection")
'***** Specifierar sökvägen *****'
MdbFilePath = Server.MapPath("foto_album.mdb")

'***** öppnar databasen *****'
Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"

'connect är vårt connecton-objekt
'som har öppnats enligt exempel i
'länken
'
'bygg sql-fråga
sql = "select * from fotoalbum"
'skapa recordset
set rs = Connect.execute(sql)
'hämta alla poster

while not rs.eof
'skriv ut värdet i kolumnen aleb
response.write rs("bild") & "<br>"
'skriv ut värdet i kolumnen caleb
response.write rs("rubrik") & "<br>"
'flytta till nästa post i recordsetet
rs.movenext
'om det är slut på poster så
'sätts eof (END OF FILE) till sant 
'och då avslutas loopen
wend
'stäng recordset
rs.close
Set rs = Nothing
'stäng connection
Connect.close
Set Connect = Nothing
%>

------------------
"Ni tre går och bildar en kvadrat" (Rolf Zetterlund under ett träningspass)

[Redigerat av iceM2 den 02 dec 2001]

jorgenMedlem sedan feb. 20012 412 inlägg
#7
<%
'***** Skapar Connection-objektet *****'
Set [b]Databas[/b] = Server.CreateObject("ADODB.Connection")
'***** Specifierar sökvägen *****'
MdbFilePath = Server.MapPath("foto_album.mdb")

'***** öppnar databasen *****'
[b]Databas[/b].Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"

'connect är vårt connecton-objekt
'som har öppnats enligt exempel i
'länken
'
'bygg sql-fråga
sql = "select * from fotoalbum"
'skapa recordset
set rs = [b]connect[/b].execute(sql)
'hämta alla poster

while not rs.eof
'skriv ut värdet i kolumnen aleb
response.write rs("bild") & "<br>"
'skriv ut värdet i kolumnen caleb
response.write rs("rubrik") & "<br>"
'flytta till nästa post i recordsetet
rs.movenext
'om det är slut på poster så
'sätts eof (END OF FILE) till sant 
'och då avslutas loopen
wend
'stäng recordset
rs.close
'stäng connection
[b]connect[/b].close
%>

Hej, de markerade orden ska heta samma, förslagsvis Connect.

mvh Jörgen :)

------------------
Varför bråka när man kan kramas?

mattiasnordinMedlem sedan maj 20012 080 inlägg
#8

Det fungerar utmärkt. Fick det faktiskt att fungera innan jag läste detta. Ibland fungerar Trial n error men det är ju bättre om man vet vad man håller på med :e Tackar Jörgen och Ice...

------------------
http://www.absolut.nu

iceM2Medlem sedan mars 2001243 inlägg
#9

Sedan kan du ju läsa ännu mer om databaser & sql på Vides hemsida webeye:
http://www.webeye.nu/default2.asp?que=asp/default.asp&exec=asp/artiklar/asp8.asp

------------------
"Ni tre går och bildar en kvadrat" (Rolf Zetterlund under ett träningspass)

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