La cosa strana è che il visualizzatore di "Dipendenze" di Enterprise Manager
continua a visualizzare oggetti associati alle varie tabelle... (immagino
che le "Dependancies" vengano create sulla base dei suddetti triggers)
Non capisco quale criterio utilizzi per visualizzare dipendenze tra tabelle
dato che:
1) Triggers non ce sono più
2) Il diagramma delle relazioni deve ancora essere creato.
Se le inventa? ;-)
Scherzi a parte, può essere che le dipendenze siano rimaste memorizzate in
una tabella di sistema del Server ... ma come fare ad eliminarle
completamente?
La presenza di vincoli di integrità referenziale (foreign keys)
> Scherzi a parte, può essere che le dipendenze siano rimaste
> memorizzate in una tabella di sistema del Server ... ma come fare ad
> eliminarle completamente?
Più precisamente un vincolo FK è una proprietà della tabella e possono
essere creati/rimossi utilizzando il comando ALTER TABLE.
Puoi interrogare le tabelle di sistema per conoscere i vincoli FK presenti
in un database utilizzando la vista
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS, quindi eseguendo la query
SELECT *
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
oppure puoi utilizzare la stored procedure di sistema sp_fkeys a cui puoi
passare come parametro il nome della tabella ed ottenere informazioni sui
vincoli di integrità referenziale impostati per la tabella in questione.
Fai riferimento al Book On Line (BOL) per ulteriori approfondimenti. Puoi
scaricarne la versione più aggiornata (se ancora non l'hai fatto) dal link
http://www.microsoft.com/sql/techinfo/productdoc/2000/books.asp
Bye
--
Luca Bianchi
Microsoft MVP - SQL Server
http://mvp.support.microsoft.com
Anzitutto grazie per la risposta :-)
> > Scherzi a parte, può essere che le dipendenze siano rimaste
> > memorizzate in una tabella di sistema del Server ... ma come fare ad
> > eliminarle completamente?
> Più precisamente un vincolo FK è una proprietà della tabella e possono
> essere creati/rimossi utilizzando il comando ALTER TABLE.
> Puoi interrogare le tabelle di sistema per conoscere i vincoli FK presenti
> in un database utilizzando la vista
> INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS, quindi eseguendo la query
>
> SELECT *
> FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
>
> oppure puoi utilizzare la stored procedure di sistema sp_fkeys a cui puoi
> passare come parametro il nome della tabella ed ottenere informazioni sui
> vincoli di integrità referenziale impostati per la tabella in questione.
Mi pare che anche Enterprise Manager consenta di vederli: struttura tabella,
scheda Indici/Relazioni...
Senti Luca, potresti farmi un esempietto di utilizzo di Alter Table per la
rimozione di un vincolo d'integrità referenziale?
La documentazione in linea è troppo dettagliata e non ho visto un esempio
pratico che faccia al caso mio: mi faresti risparmiare un mucchio di tempo!
:-)
Ciao, Andrea
Ciao Andrea,
la sintassi è:
ALTER TABLE <owner>.<tabella>
DROP CONSTRAINT <constraint>
Per un esempio pratico leggi il seguente post:
http://groups.google.it/groups?selm=bdbq9r%24r4i4d%241%40ID-154627.news.dfncis.de
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://mvp.support.microsoft.com
> Ciao Andrea,
> la sintassi č:
> ALTER TABLE <owner>.<tabella>
> DROP CONSTRAINT <constraint>
> Per un esempio pratico leggi il seguente post:
>
http://groups.google.it/groups?selm=bdbq9r%24r4i4d%241%40ID-154627.news.dfnc
is.de
GRAZIE ragazzi: area fantastica! ;-))
Andrea