Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    68

    Aggiungere ad una colonna di una tabella un constraint di tipo IDENTITY

    Esiste un modo per aggiungere un constraint di tipo identity ad una colonna int di sql server 2000. In sostanza nella colonna sono inseriti i codici identificativi di alcuni record ripresi da un'altra applicazione in access. Creando la colonna identity direttamente in sql server la numerazione non coincide: ad esempio se nel db originario c'é la sequenza 1-2-6-7-12 ecc. perché alcuni record erano stati cancellati, adesso con il vincolo di chiave primaria in sql server la sequenza diventa 1-2-3-4-5 ecc. e di conseguenza si perdono le corrispondenze. Avete un'idea in merito??
    Grazie

  2. #2
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    mi sfugge la logica della domanda.

    se definisci il campo identity, i valori poi li gestisce il db garantendone l'univocità.
    Se invece definisci il campo solo come int, a questo punto puoi gestirti da solo l'insert.
    se vuoi evitare che ci siano dei doppioni, puoi aggiungere una chiave primaria su quel campo.
    Tutti vogliono parlare, nessuno sa ascoltare.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    68
    forse non sono stato felice nella spiegazione. ho un'applicazione access in cui c'era un campo contatore definito come chiave primaria. Sono stati inseriti e cancellati dei record nel normale utilizzo, quindi la sequenza dei valori non é più completa ad esempio ho il campo id che ha valore 23, 24,25 , 30, 31 , ecc perché il 26-27-28 sono stati cancellati. Nel passare il tutto su sql server impostando un campo id identity cambia la numerazione per cui non ho più la corrispondenza. Se invece creo una colonna int vengono ricopiati gli stessi valori, ma poi devo gestire io l'identity della colonna

  4. #4
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    puoi fare in diversi modi.
    crei l'identity prima dell'insert e poi in fase di importazione con i dts usi l'opzione set identity insert on
    oppure crei il campo int, importi i dati e poi aggiungi il vincolo di identity. lo puoi fare sia in enterprise manger che da query analizer o transact-sql
    Tutti vogliono parlare, nessuno sa ascoltare.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    68
    Quindi é possibile settare successivamente il vincolo IDENTITY dopo aver effettuato l'importazione dei dati. Avevo letto da una parte che non era possibile effettuare questa operazione.
    Grazie

  6. #6
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    in sqlserver si può fare, con access credo no
    Tutti vogliono parlare, nessuno sa ascoltare.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    68
    scusa il ritardo nella risposta. farò una prova grazie

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.