webForumDet fria alternativet

DB-koppling i funktion?

ASP

6 svar · 235 visningar · startad av Lukaspojken

Medlem sedan maj 20011 312 inlägg
Frågan#1

Så här såg min gamla DB-kopplingskod ut

Sub DB_koppling					'Databas-kopplingen istället för include
	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MinDB"
End Sub

Jag anropade subben med:
DB_koppling

Sen ändrade jag subben till en funktion eftersom det ska vara bättre och då skrev jag om koden så här:

Function DB_koppling					'Databas-kopplingen istället för include
	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MinDB"
	set DB_koppling=Connect
End Function

Jag anropar funktionen genom:
set Connect = DB_koppling

Jag testade att ta bort subben och lägga till funktionen med sitt anrop på några ställen. Det underliga är att där det står fortfarande ett subanrop, DB_koppling, där fungerar DB-hämtningen ändå? (Varför fungerar den även om jag tagit bort subben?)

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan dec. 2000203 inlägg
#2

kanske du har kvar båda två?

------------------
blackarmy.se

Medlem sedan maj 20011 312 inlägg
#3

Har dubbelcheckat det...men det kanske går att anropa en funktion genom DB_koppling också?

Men varför skrev emission:
set Connect = DB_koppling

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan dec. 19996 721 inlägg
#4

En function fungerar likadant som en sub, skillnaden är bara att function kan returnera ett värde.

Medlem sedan maj 20011 312 inlägg
#5

Så egentligen behöver jag inte skriva:
set Connect = DB_koppling

Men varför skriver du det?

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan mars 20002 836 inlägg
#6

Bara för att kunna skapa fler connections vid behov.

Om du har den i en sub så måste du ju deklarera variabeln "globalt" och kan således endast skapa en connection från den subben.

cya,
PatrikB

------------------
*så kan det gå när inte haspen är på*

Medlem sedan maj 20011 312 inlägg
#7

Grrr...:)

När jag använde mig av subben så anropade jag den flera gångar. Då skapade jag väl flera connections. Sen så deklarerar jag också funktionen globalt. Den är på samma ställe som subben var innan. Behöver den inte vara det eller? Jag ser inte någon skillnad på subben och funktionen. Kan ni inte exemplifiera. (försöker förstå)

------------------
Alltid lär man sig något nytt varje dag...

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