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

    Confronta prezzo1 da tabella1 e prezzo2 da tabella2

    Per confrontare il contenuto della cella PREZZO da una tabella A con quello di RPREZZO della tabella B ho scritto questo codice:

    Set rsconfronta4 = Server.CreateObject("ADODB.RecordSet")

    Sqlconfrontap = ("select prodotti.* from prodotti LEFT join prodottimexal ON prodotti.RPrezzo = prodottimexal.Prezzo where prodottimexal.Prezzo IS <>")

    RSconfronta4.Open Sqlconfrontap, Connconfronta, 1

    If Not RSconfronta4.EOF Then RSconfronta4.MoveFirst
    Do While Not RSconfronta4.EoF

    prezzo = rsconfronta4("prezzo")

    response.write prezzo
    response.write "
    "

    RSconfronta4.Movenext
    loop


    Ma ottengo un bel

    Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

    ODBC driver does not support the requested properties.


    Ho gia' usato un sorgente molto simile tempo fa, map er valori alfanumerici...

    Aiuto! :master:

  2. #2
    anche cosi` non cambia...

    Sqlconfrontap = "select * from prodotti WHERE RPrezzo <> (SELECT Prezzo from articoli)"

    :master:

  3. #3
    Non ho capito granchè, cosa devi fare?
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  4. #4
    devo leggere i campi Prezzo da Tabella1 e RPrezzo da Tabella2, e scrivere a video quelli che sono differenti

    Tipo

    Codice1 Prezzo 12
    Codice1 Rprezzo 12
    ok

    rs.movenext

    Codice2 Prezzo 12
    Codice2 Rprezzo 13

    Scrivi Codice2

    rs.movenext...

  5. #5
    Prova così:

    codice:
    Sqlconfrontap = "select * from prodotti WHERE RPrezzo not in (SELECT Prezzo from articoli)"
    Oppure:

    codice:
     - 1a Query
     - prezzo1 = rs1("prezzo")
    
     - 2a Query
     - prezzo2 = rs2("prezzo")
    
    if cdbl(prezzo1) = cdbl(prezzo2) then
       response.write("I prezzi sono uguali")
    else
       response.write("Prezzo 1 = " & prezzo1 & "
    ")
       response.write("Prezzo 2 = " & prezzo2)
    end if
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  6. #6
    niente stesso errore

    Set Connconfronta = Server.CreateObject("ADODB.Connection")
    Connconfronta.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("\db\confronto.mdb")

    Set rsconfronta4 = Server.CreateObject("ADODB.RecordSet")

    Sqlconfrontap = "select * from prodotti WHERE RPrezzo not in (SELECT Prezzo from articoli)"

    rsconfronta4.Open Sqlconfrontap , Connconfronta, 1

    If Not rsconfronta4.EOF Then rsconfronta4.MoveFirst
    Do While Not rsconfronta4.EoF

    codice = rsconfronta4("codice")

    response.write codice
    response.write "
    "

    rsconfronta4.Movenext
    loop


    Questo e` il codice al completo...

  7. #7
    Hai provato la seconda soluzione?

    E poi che tipo di errore?
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  8. #8
    Ho risolto, e andavano bene sia lap rima che la seconda soluzione... ehm... perdono...pieta'... i campi nel DB di tabella 1 e tabella 2 non erano dello stesso tipo

    Grazie mille!

  9. #9
    L'importante che nel confronto utilizzi variabili dello stesso tipo (cbdl() viene in soccorso il tal senso).

    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

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.