Avatar billede bjornhart Nybegynder
18. januar 2001 - 08:38 Der er 16 kommentarer og
1 løsning

Database objekt

Hej
Jeg ved ikke helt om dette er det rigtige forum, men jeg prøver alligevel.
Kan det virkeligt være rigtig at man på hver side som laver database udtræk skal oprette et database objekt. Kan det ikke lade sig gøre at lave et globalt objekt som alle sider kan bruge?
Avatar billede wisen Nybegynder
18. januar 2001 - 08:43 #1
Hvis du benytte ASP på en IIS, så kan databaseforbindelsen ligge i en sessionsvariabel..
Avatar billede wisen Nybegynder
18. januar 2001 - 08:44 #2
Set session(\"Database\") = Server.CreateObject...
Avatar billede bjornhart Nybegynder
18. januar 2001 - 08:54 #3
Det lyder interessant, men kan du ikke skrive den fulde kode, da jeg er lidt af en novice på dette felt?
Avatar billede wisen Nybegynder
18. januar 2001 - 08:55 #4
Det går lidt tid før det kan lade sig gøre, jeg er på arbejde, og har et møde.... men jo, det kan jeg godt hvis du kan vente....
Avatar billede bjornhart Nybegynder
18. januar 2001 - 08:58 #5
Selvfølgelig kan jeg det. Tag du bare den tid du skal.
Avatar billede wisen Nybegynder
18. januar 2001 - 10:50 #6
Nogen i stil med :
db = \"MinDatabase.mdb\"
Set Session(\"Connection\") = Server.CreateObject(\"ADODB.Connection\")
Session(\"Connection\").Open \"DRIVER={Microsoft access Driver (*.mdb)}; DBQ=\" & Server.MapPath(db) & \";\"

Set rs = Server.createObject(\"ADODB.RecordSet\")
sql = \"Select * from Stamoplysninger\"
rs.open sql, Session(\"connection\"), 1, 3

Således...
Avatar billede bjornhart Nybegynder
18. januar 2001 - 10:59 #7
Tusind tak for det. Du har ærligt fortjent alle 60 points.
Avatar billede wisen Nybegynder
18. januar 2001 - 11:02 #8
Tak for det...
Avatar billede bjornhart Nybegynder
23. januar 2001 - 14:20 #9
hej wisen
Du blev ikke helt færdig med mig alligevel. Jeg har lige et spørgsmål vedr. koden. Skal man på hver ASP-side skrive \" Set rs = Server.createObject(\"ADODB.RecordSet\") \"?
mvh
david
Avatar billede wisen Nybegynder
23. januar 2001 - 14:24 #10
Ja, det skal man i ovenstående eksempel, men du burde bare kunne lave en ny sessionsvariabel..
Avatar billede bjornhart Nybegynder
23. januar 2001 - 14:32 #11
hvordan? håber ikke jeg er til for meget besvær
Avatar billede wisen Nybegynder
23. januar 2001 - 14:34 #12
Set Session(\"RecordSet\") = Server.CreateObject(\"ADODB.RecordSet\") ....
Avatar billede wisen Nybegynder
23. januar 2001 - 14:34 #13
..Jeg har ikke selv testet et recordset i en sessionsvariabel !!!
Avatar billede bjornhart Nybegynder
23. januar 2001 - 14:44 #14
vil det sige at jeg så kan skrive:
Set Session(\"RecordSet\") = Server.CreateObject(\"ADODB.RecordSet\")
sql = \"Select * from Stamoplysninger\"
RecordSet.open sql, Session(\"connection\"), 1, 3
Avatar billede wisen Nybegynder
23. januar 2001 - 14:45 #15
... Session(\"RecordSet\").open sql, ...
Avatar billede bjornhart Nybegynder
23. januar 2001 - 15:14 #16
Hvad er egentlig forskellen på disse to metoder. For mig at se er sker der det samme, men er der noget performance forskel eller hva?
Avatar billede wisen Nybegynder
23. januar 2001 - 15:16 #17
Det er ikke \" RecordSet \" objektet du skal bruge, men \" session(\"RecordSet\") \" for at benytte \" open\" operatoren ....
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
Computerworld tilbyder specialiserede kurser i database-management

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