|
| Indsætte data i 2 tabeller i access??? Fra : Morten Andersen |
Dato : 22-09-02 13:16 |
|
Hej ng,
Vil gerne kunne indsætte data fra en asp.side i en access database der har
to tabeller. Data om kunstner skal i kunstner-tabellen og navnet på album
skal i album-tabellen. Hvorhenne i min kode skal jeg angive at det skal ind
i to tabeller? Skal forbindelsen til databasen lukkes for derefter at åbnes
igen?
<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" &
Server.MapPath("database2.mdb")
Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "Select * From Kunstner"
rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs("Kunstner") = Request.form("Kunstner")
rs("Album") = Request.form("Album")
rs.Update
rs.Close
Set rs = Nothing
Conn.Close
set Conn = Nothing
response.redirect ("search.shtml")
%>
Morten
| |
Carsten Pedersen (23-09-2002)
| Kommentar Fra : Carsten Pedersen |
Dato : 23-09-02 18:50 |
|
Hej, Morten!
Jeg tror, det vil være nemmere for dig at anvende to INSERT-sætninger i
stedet. Når du har hul igennem til databasen, skriver du:
<%
IndsetSQL = "INSERT INTO Kunstner([feltliste]) VALUES([værdiliste])"
Conn.Execute(IndsetSQL)
IndsetSQL = "INSERT INTO Album([feltliste]) VALUES([værdiliste])"
Conn.Execute(IndsetSQL)
%>
hvor [feltliste] er en liste over de felter i tabellen, du vil indsætte data
i, mens [værdiliste] er de tilhørende værdier. I begge lister adskilles de
enkelte elementer med et "," (komma).
Mens du udvikler siden, er det en god ide lige at indsætte en
Response.Write IndsetSQL & "<BR>"
lige inden Conn.Execute-sætningen. Opstår der en fejl under indsættelsen,
har du SQL-sætningen stående i browseren og kan nemt spotte eventuelle fejl.
Du kan så altid fjerne Write-sætningerne igen, når siden virker.
Mvh
C@rsten
"Morten Andersen" <dsl63258@vip.cybercity.dk> skrev i en meddelelse
news:amkc8e$892$1@news.cybercity.dk...
> Hej ng,
>
> Vil gerne kunne indsætte data fra en asp.side i en access database der har
> to tabeller. Data om kunstner skal i kunstner-tabellen og navnet på album
> skal i album-tabellen. Hvorhenne i min kode skal jeg angive at det skal
ind
> i to tabeller? Skal forbindelsen til databasen lukkes for derefter at
åbnes
> igen?
>
> <%
>
>
> Const adOpenKeyset = 1
>
> Const adLockOptimistic = 3
>
>
> Set Conn = Server.CreateObject("ADODB.Connection")
>
> Conn.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ="
&
> Server.MapPath("database2.mdb")
>
>
> Set rs = Server.CreateObject("ADODB.RecordSet")
>
> strSQL = "Select * From Kunstner"
>
> rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic
>
>
> rs.AddNew
>
> rs("Kunstner") = Request.form("Kunstner")
>
> rs("Album") = Request.form("Album")
>
> rs.Update
>
>
> rs.Close
>
> Set rs = Nothing
>
> Conn.Close
>
> set Conn = Nothing
>
> response.redirect ("search.shtml")
>
> %>
>
> Morten
>
>
| |
|
|