Ciao,
ho queste due funzioni per gestire la connessione ADO per diversi db (devo fare una migrazione da access a mariadb-mysql)
codice:
Function CreaConnDB(driver, database, porta, serverMariaDB, user, password, opt, charset) set connessione = server.CreateObject("ADODB.Connection")
'verifico se il driver e' selezionato
Select Case driver
Case 1, 2, 3
Case Else
CreaConnDB = Nothing
esitoOp "Attenzione inserire driver corretto per la connessione"
End Select
select case driver
case drvDBAccess
drv = "{Microsoft Access Driver (*.mdb)}"
db = server.mappath(database)
'response.Write db
conn_string = "Driver="& drv &"; DBQ=" & db
case drvDBMariaDBx64
drv = "{MariaDB ODBC 3.1 Driver}"
db = database
porta = port
srv = serverMariaDB
utente = user
pwd = password
opzioni = opt
char = charset
conn_string = "DRIVER="& drv &";port="& porta &";SERVER="& srv &";UID="& utente &";PWD="& pwd &";database="& db &";Option="& opzioni &";charset="& char
case drvDBMysql
drv = "{MySQL ODBC 8.0 UNICODE Driver}"
db = database
porta = port
srv = serverMariaDB
utente = user
pwd = password
opzioni = opt
char = charset
end select
If conn_string <> "" Then
On Error Resume Next
connessione.connectionString = conn_string
set CreaConnDB = connessione
If Err.Number <> 0 Then
'gestire errori
End If
On Error Goto 0
Else
'gestire errori
End If
End Function
Function ChiudiConnDB(connessioneDB)
If Not connessioneDB Is Nothing Then
connessioneDB.close
End If
set connessioneDB = Nothing
End Function
la funzione apriConnDB funziona, ma la chiudiConnDB mi da errore sulla riga rossa, anche se lascio solo connessioneDB.close stesso errore
Errore di run-time di Microsoft VBScript error '800a01a8'
Necessario oggetto
mi sapete aiutare? vorrei chiudere la connessione per non lasciare oggetti aperti