Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    connessione a due Database

    ciao ragazzi.... in un sito ho due db separati... e una pagina dovrebbe interrogare entrambi in porzioni diverse... si può fare una cosa del genere? cioè.. posso aprire simultaneamente due connessioni diverse ai due db nella stessa pagina?
    Meglio tacere e dare l'impressione di essere stupidi piuttosto che parlare e togliere ogni dubbio.

  2. #2

  3. #3
    ok,,, ho creato due funzoni per aprire la connessione al db... le ho chiamate dbOpen() e dbOpen2().... una punta ad un db e l'altra a quell'altro.
    ho richiamato entrambe le funzioni nella pagina ma l'errore è:

    "Il modulo di gestione di database Microsoft Jet non è in grado di trovare la tabella o la query di input 'T_Primo'. Verificare che esista e che il nome sia stato digitato correttamente.
    "

    e T_Primo è una tabella del secondo db....
    Meglio tacere e dare l'impressione di essere stupidi piuttosto che parlare e togliere ogni dubbio.

  4. #4
    e quella tabella sei sicuro di averla cercata tramite un'interrogazione al SECONDO database?

  5. #5
    ho aperto entrambi i db in riga 15 o giù di li tramite
    <% dbOpen()
    dbOpen2() %>
    dopodichè ho lasciato la pagina inalterata... quindi con tutte le sue query così come l'avevo scritta prima... devo dichiarare qualcos aprima della query? cioè: devo dire alla query dove che db interrogare? se si come si fA?
    Meglio tacere e dare l'impressione di essere stupidi piuttosto che parlare e togliere ogni dubbio.

  6. #6
    mi sembra il minimo...dato che hai due connessione....
    devi aprire un recordset per ogni connessione:

    Set rs1=Server.CreateObject(ADODB.RecordSet)
    Sql1="etc etc etc"
    rs1.Open Sql1, Conn1
    rs1.Close
    Set rs1=Nothing
    Set rs2=Server.CreateObject(ADODB.RecordSet)
    Sql2="etc etc etc"
    rs2.Open Sql2, Conn2
    rs2.Close
    Set rs2=Nothing

    dbClose()
    dbClose2()

  7. #7
    si, infatit ho fatot proprio così..... e ho trovato l'errore...
    grazie infinite!!!!!!!!!!!!!!!
    Meglio tacere e dare l'impressione di essere stupidi piuttosto che parlare e togliere ogni dubbio.

  8. #8

  9. #9
    Originariamente inviato da ianstilo
    mi sembra il minimo...dato che hai due connessione....
    devi aprire un recordset per ogni connessione
    Ne approfitto per correggere.

    Non devi creare un recordset per ogni connessione, al contrario, la cosa migliore sarebbe mantenere lo stesso per evitare inutili dispersioni di risorse, ovviamente se la natura dello script lo consente.

    Una procedura come

    codice:
    Set rs1=Server.CreateObject(ADODB.RecordSet)
    Sql1="etc etc etc"
    rs1.Open Sql1, Conn1
    rs1.Close
    Set rs1=Nothing
    Set rs2=Server.CreateObject(ADODB.RecordSet)
    Sql2="etc etc etc"
    rs2.Open Sql2, Conn2
    rs2.Close
    Set rs2=Nothing
    crea un oggetto, lo usa, lo distrugge, lo ricrea, lo riusa e lo ridistrugge.

    E' quindi possibile usare uno stesso recordset invece di distruggerlo.
    Si avanzerà una procedura di creazione ed una di distruzione che inevitabilmente richiede risorse.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.