/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Databaser
Fra : Voller


Dato : 26-03-03 07:56

Hej NG.


Det er egentligt ikke så meget et konkret problem jeg har, men mere en
undren over de mange muligheder man har for at hente data ud af en database.
Disse tre ting, sikkert plus flere, gør jo det samme.

Dim objRS, strConnect, strSQL
strConnect = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("db.mdb")
strSQL = "SELECT [Foo] FROM [Bar] ORDER BY ItemID"
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open strSQL, strConnect


Dim objComm, objRS, strSQL, strConnect
strConnect = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("db.mdb")
strSQL = "SELECT [Foo] FROM [Bar] ORDER BY ItemID"
Set objComm = Server.CreateObject("ADODB.Command")
objComm.CommandText = strSQL
objComm.ActiveConnection = strConnect
Set objRS = objComm.Execute


Dim objConn, objRS, strSQL, strConnect
strConnect = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("db.mdb")
strSQL = "SELECT [Foo] FROM [Bar] ORDER BY ItemID"
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open strConnect
Set objRS = objConn.Execute(strSQL)


Alle tre eksempler henter jo data fra databasen. Hvad er forskellen på de
tre metoder? Eller... Sagt på en anden måde: I hvilke situationer bør man
benytte de forskellige objekter? Hvad er fordelene i den ene metode, frem
for de to andre?



Mvh. Voller.



 
 
Voller (27-03-2003)
Kommentar
Fra : Voller


Dato : 27-03-03 11:30

"Voller" <voller@et.sted.dk> skrev
> Alle tre eksempler henter jo data fra databasen. Hvad er forskellen på de
> tre metoder? Eller... Sagt på en anden måde: I hvilke situationer bør man
> benytte de forskellige objekter? Hvad er fordelene i den ene metode, frem
> for de to andre?


Jeg har andetsteds fået følgende svar fra en erfaren udvikler:

Løsning 1 (ADODB.Recordset) med et explicit recordsæt sætter dig i stand til
at bruge metoder som addnew, update, delete osv. osv.
Min personlige mening og erfaring er at metode 2 (ADODB.Command) er noget
man skal holde sig fra. Det er at besværliggøre ting.
Løsning 3 (ADODB.Connection) er mest performancevenlig og bør bruges hvis
man ikke har brug for at foretage operationer direkte på recordsettet.

Så sådan skulle det være



Jakob Andersen (27-03-2003)
Kommentar
Fra : Jakob Andersen


Dato : 27-03-03 12:17

Voller skrev:
> Løsning 1 (ADODB.Recordset) med et explicit recordsæt sætter dig i stand til
> at bruge metoder som addnew, update, delete osv. osv.

Det er ikke helt korrekt, det kommer 100% an på hvilken cursor og locktype
du benytter.

> Løsning 3 (ADODB.Connection) er mest performancevenlig og bør bruges hvis
> man ikke har brug for at foretage operationer direkte på recordsettet.

Det kan faktisk være hurtigere afhænig af belastningsmængde at bruge et
recordset med en clientside cursor.

--
Jakob Andersen

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste