Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413

    stored procedure: non funziona la clausola IN...

    Ciao a tutti,

    ho un problema all'interno di una stored procedure.

    praticamente all'interno di un ciclo genero una stringa (tipo varchar) di ID separati da virgola (es. 3, 5, 7, 10).

    Questa stringa la uso successivamente in una query di update utilizzando la clausola IN.

    (es. UPDATE tab_clienti WHERE idCLiente IN (@varStringa))

    Il fatto è che non funziona e mi continua a dire:

    Syntax error converting the varchar value '3, 5, 7, 10' to a column of data type int.

    perchè?

    non capisco..

    grazie a tutti

  2. #2
    è un problema ricorrente con gli id numerici. dovresti mettere gli ID in JOIn. cerca in rete, ci sono molti esempi

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    mmm...ma al di la che si tratti di ID, IN serve proprio a quello, passare valori numerici separati da un carattere...non si puo fare in stored??

  4. #4
    il problema è semplice.

    tu passi una stringa @varStringa="1,2,3,4"

    quindi

    UPDATE tab_clienti WHERE idCLiente IN (@varStringa)

    diventa

    UPDATE tab_clienti WHERE idCLiente IN ('1,2,3,4') ---- errore!

    e non

    UPDATE tab_clienti WHERE idCLiente IN (1,2,3,4) ---- corretta

    se cerchi in rete, vedrai che è un problema comune. troverai anche diverse soluzioni

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    quindi dovrei fare un replace degli apici???ho provato ma non va. In rete ho trovato questo :

    LINK

    ma non ho ben capito se fa al caso mio...

    grazie a tutti

  6. #6
    Originariamente inviato da alexinside83
    quindi dovrei fare un replace degli apici???ho provato ma non va. In rete ho trovato questo :

    LINK

    ma non ho ben capito se fa al caso mio...

    grazie a tutti
    replace de che? gli apici li mette il parser di sql, mica tu...

    comunque, studia questo

    http://vyaskn.tripod.com/passing_arr...procedures.htm

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.