webForumDet fria alternativet

Klass-fel

ASP

1 svar · 271 visningar · startad av Fireh

Medlem sedan jan. 2003173 inlägg
Frågan#1

Normalt kör jag med MyODBC och öppnar då kopplingen till databasen med:

Set db = Server.CreateObject("ADODB.Connection")
db.Open "DSN=databasnamn"

Men just nu sitter jag på farsans 56K-modem och kände inte för att dra hem installationen på 7,5 Mb. Fick ett tips om VBMySQLDirect som dessutom skulle vara snabbare än att köra med ODBC... sagt och gjort, jag installerade. Vad jag kan läsa mig till i deras General Usage ska man använda följande kod:

Dim pCnn As MYSQL_CONNECTION
Set pCnn = New MYSQL_CONNECTION
pCnn.OpenConnection txtHost, txtUserName, txtPassword, cmbDatabase

Detta har jag då modifierat till följande:

Dim db AS MYSQL_CONNECTION
Set db = New MYSQL_CONNECTION
db.OpenConnection server, användarnamn, lösenord, databasnamn

Då får jag följande fel:

Kompileringsfel i Microsoft VBScript (0x800A0401)
Slut på programsats förväntas.
/databas.asp, line 1, column 7
Dim db AS MYSQL_CONNECTION
------^

Om jag tar bort Dim-raden, så blir det istället följande fel:

Körningsfel i Microsoft VBScript (0x800A01FA)
Klass har inte definierats: 'MYSQL_CONNECTION'
/databas.asp, line 1

Det hade väl gått snabbare att ladda hem MyODBC... men nu har jag gett mig f-n på att få det att fungera :OO

Medlem sedan feb. 200112 078 inlägg
#2

VBScript har inte stöd för explicita datatyper eller möjlighet att göra binds till objekt på det sättet. Det existerar bara varianter, vilket innebär att 'As [datatyp/objekt]' inte går att använda. I VB dock, fungerar detta.

Du får definera utan 'As' samt använda en ADODB-koppling istället. Dessutom får du använda metoden .Open på ditt connection-objekt också.

Dim db
Set db = Server.CreateObject("ADODB.Connection")
db.Open server, användarnamn, lösenord, databasnamn
266 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)