Klass-fel

ASP

1 svar · 282 visningar · startad av Fireh

Medlem sedan jan. 2003173 inlägg
Trådstart#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
261 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)