Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    [SQL] Come posso aggiungere colonne dinamicamente con nome dinamico?

    Ciao a tutti,
    vorrei gestire una tabella temporanea nel seguente modo:
    1. Ho un cursore che mi scorre dei dati da una tabella
    2. Durante il fetch del cursore memorizzo un campo in una variabile
    3. Aggiungo la collonna alla tabella dove il nome della colonna è proprio la variabile del cursore

    Vi metto il codice:

    DECLARE pippo INSENSITIVE CURSOR FOR
    SELECT campo1 FROM tabella
    FOR READ ONLY
    OPEN pippo
    FETCH NEXT FROM pippo INTO @prova
    WHILE (@@FETCH_STATUS = 0)
    BEGIN
    ALTER TABLE #temporanea
    ADD @prova INT
    FETCH NEXT FROM pippo INTO @prova
    END
    DEALLOCATE pippo

    Ma mi esce questo errore:
    sintassi non corretta in prossimità di '@prova'.

    Come posso risolvere il problema?

    Grazie in anticipo

  2. #2
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    costuisciti la stringa sql da eseguire e poi eseguila. ti servono due passaggi.

    ...
    select @sql= 'ALTER TABLE #temporanea ADD ' + @prova + ' INT '
    print @sql
    exec(@sql)
    Tutti vogliono parlare, nessuno sa ascoltare.

  3. #3
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Giusto

    Originariamente inviato da Gioba66
    costuisciti la stringa sql da eseguire e poi eseguila. ti servono due passaggi.

    ...
    select @sql= 'ALTER TABLE #temporanea ADD ' + @prova + ' INT '
    print @sql
    exec(@sql)
    Ottima idea grazie ora ci provo

  4. #4
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Re: Giusto

    X Conferma ha funzionato!!!!

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.