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

    problema con RecordSet e SQL Server

    Ciao a tutti.
    Ho "ereditato" un applicativo web scritto in asp 3.0 che si basa su SQL Server 2005.
    Fin qui tutto ok.
    Ho cominciato a fare delle modifiche su richiesta del cliente.
    Ho creato una versione di sviluppo in localhost e mi sono installato SQL server 2005 Standard Edition sulla mia macchina di sviluppo.

    Vengo al problema: quando leggo dei dati da una tabella, per quanto riguarda i campi di tipo nchar o anche nvarchar se utilizzo un codice del tipo:

    if rs.fields("CHIAVE").value = "myKey" then ' L'errore accade qui!
    ' ...fa qualcosa
    end if
    dove rs è un oggetto di tipo RecordSet, mi viene segnalato un errore:
    Tipo di errore:
    Errore di run-time di Microsoft VBScript (0x800A000D)
    Tipo non corrispondente
    /picosvil/INCLUDE/cache.asp, line
    Adesso la soluzione del problema l'ho trovata: di fatto "rs.fields("CHIAVE").value" anzichè essere una stringa è un array di byte, quindi se cambio il codice sopra come segue:

    if Cstr(rs.fields("CHIAVE").value) = "myKey" then ' L'errore accade qui!
    ' ...fa qualcosa
    end if
    Però ho un problema: ho quasi 500 pagine asp nell'applicativo dove ci sono più volte nella stessa pagina riferimenti ad oggetti di tipo recordSet che usano codice simile a quello soprastante.
    La premessa è che sulla macchina di produzione tutto funziona.
    Allora la domanda vera è: da cosa dipende l'errore che ottengo. E' un'impostazione di SQL Server che ho installato sulla mia macchina di sviluppo? Se sì quale? Qualcuno ne sa qualcosa?
    Oppure c'è qualche altro problema che non conosco?

    Mi date una mano?

    Grazie a tutti.
    Fedrok
    Corsi di Shiatsu a Brescia? Corso di Shiatsu a Brescia?
    ____________________________________
    Visto che la luce viaggia piu' veloce del suono, sara' per questo che molte persone appaiono brillanti finchè non le senti parlare?

  2. #2

    Ho fatto una prova:

    ho provato a cambiare la connectionString e a far puntare l'applicativo al SQL Server della macchina di produzione: quindi uso IIS in locale sulla mia macchina e SQL server con i dati della macchina di produzione.
    Vedo che va comunque in errore!
    Quindi è un problema di IIS che ho in locale o forse della mia versione di di ADO!
    A qualcuno è mai capitato?
    Qualche idea per risolvere?

    grazie,

    fedrok
    Fedrok
    Corsi di Shiatsu a Brescia? Corso di Shiatsu a Brescia?
    ____________________________________
    Visto che la luce viaggia piu' veloce del suono, sara' per questo che molte persone appaiono brillanti finchè non le senti parlare?

  3. #3

    !!!

    Ho provato anche a mettere l'applicazione direttamente sotto IIS sul server
    di produzione e tutto funziona.
    Quindi è qualcosa legato ai componenti di accesso ai dati... che ho sulla
    macchina di sviluppo...
    Ma cosa posso fare?
    Ho provato a scaricare l'MDAC 2.8 SP1, ma quando tento di installarlo vengo
    avvisato che la versione scaricata non è compatibile con il sistema
    operativo corrente.
    In realtà questo msg è erroneo esce perchè sulla mia macchina c'è già la
    versione di MDAC di cui sopra...
    Non so più cosa fare????

    Qualcuno ha qualche idea?

    grazie.
    Fedrok
    Corsi di Shiatsu a Brescia? Corso di Shiatsu a Brescia?
    ____________________________________
    Visto che la luce viaggia piu' veloce del suono, sara' per questo che molte persone appaiono brillanti finchè non le senti parlare?

  4. #4

    Ultima prova!

    Ho provato a spostare l'applicazione sotto IIS di un'altra macchina di sviluppo (n. 2) facendola puntare allo stesso SQL Server, modificando la connString.

    Tutto funziona!
    Quindi vuol dire che ho la macchina di sviluppo (n.1) fallata.
    Solo che non so quale modulo/patch reinstallare per far andare a posto il tutto.

    Qualcuno ha qualche idea?
    Fedrok
    Corsi di Shiatsu a Brescia? Corso di Shiatsu a Brescia?
    ____________________________________
    Visto che la luce viaggia piu' veloce del suono, sara' per questo che molte persone appaiono brillanti finchè non le senti parlare?

  5. #5

    Risolto!!!!!!!

    Come pensavo.
    Si tratta di un problema di MDAC.
    Ho omesso di dire, ma non pensavo determinasse qualcosa, che sulla macchina
    di sviluppo è stato installato IBM Client Access per la connessione
    all'AS400 (iSeries).
    Sembra sia un problema noto, ma ovviamente non a me, almeno fino a oggi, che
    tale modulo IBM faccia dei pasticci con il registro di sistema, invalidando
    alcune funzioni dei driver di accesso ai dati.
    Per risolvere il problema, dopo l'installazione di Client Access, basta
    installare MDAC 2.0 che ripristina le corrette voci di registro e poi
    reinstallare la versione corrente, che ad oggi mentre scrivo è la 2.8.
    Ho provato e adesso funziona tutto.

    Posto la soluzione che non si sa mai che serva a qualcun altro, dato che io
    purtroppo ci ho perso + di due giorni...

    saluti a tutti.

    fedrok
    Fedrok
    Corsi di Shiatsu a Brescia? Corso di Shiatsu a Brescia?
    ____________________________________
    Visto che la luce viaggia piu' veloce del suono, sara' per questo che molte persone appaiono brillanti finchè non le senti parlare?

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 © 2026 vBulletin Solutions, Inc. All rights reserved.