Regole per l'aggiornamento dei risultati

Normalmente è possibile aggiornare il gruppo di risultati visualizzato nel riquadro Risultati.Talvolta non è tuttavia possibile.

In generale, per aggiornare i risultati, è necessario che in Progettazione query e Progettazione visualizzazioni siano disponibili informazioni sufficienti per identificare in modo univoco la riga specifica all'interno della tabella.Questo è ad esempio possibile quando la query include una chiave primaria nell'elenco di output.Occorre inoltre disporre delle autorizzazioni necessarie per l'aggiornamento del database.

Se la query si basa su una visualizzazione, dovrebbe essere possibile aggiornarla.Restano valide le stesse indicazioni, con l'eccezione che si applicano non solo alla visualizzazione in sé, ma anche alle tabelle sottostanti.

[!NOTA]

Progettazione query e Progettazione visualizzazioni non è in grado di determinare in anticipo se sia possibile aggiornare un gruppo di risultati sulla base di una visualizzazione.Vengono pertanto visualizzate tutte le visualizzazioni, anche se alcune potrebbero non essere aggiornabili.

La tabella che segue contiene un riepilogo di istanze specifiche in cui è o non è possibile aggiornare i risultati delle query nel riquadro Risultati.In numerosi casi la possibilità di aggiornare o meno i risultati delle query dipende dal database utilizzato.

Query

Possibilità di aggiornare i risultati

Query basata su una tabella con chiave primaria nell'elenco di output

Sì, ad eccezione di quanto elencato di seguito.

Query basata su una tabella senza indice univoco e senza chiave primaria

Dipende dalla query e dal database.Alcuni database consentono l'aggiornamento se sono disponibili informazioni sufficienti per l'identificazione univoca dei record.

Query basata su più tabelle non unite

No.

Query basata su dati contrassegnati in sola lettura nel database

No.

Query basata su una visualizzazione relativa a una tabella senza vincoli

Sì, ad eccezione di quanto elencato di seguito.

Query basata su tabelle unite da una relazione uno-a-uno

Sì, ad eccezione di quanto elencato di seguito.

Query basata su tabelle unite da una relazione uno-a-molti

In genere sì.

Query basata su tre o più tabelle unite da una relazione molti-a-molti

No.

Query basata su una tabella per la quale non è stata concessa l'autorizzazione di aggiornamento

Possibile l'eliminazione ma non l'aggiornamento.

Query basata su una tabella per la quale non è stata concessa l'autorizzazione di eliminazione

Possibile l'aggiornamento ma non l'eliminazione.

Query di aggregazione

No.

Query basata su una sottoquery contenente totali o funzioni di aggregazione

No.

Query che include la parola chiave DISTINCT per l'esclusione di righe duplicate

No.

Query la cui clausola FROM include una funzione definita dall'utente che contiene più istruzioni Select e che restituisce una tabella

No.

Query la cui clausola FROM include una funzione inline definita dall'utente

Sì.

Può inoltre non essere possibile aggiornare colonne specifiche dei risultati delle query.L'elenco che segue contiene un riepilogo delle colonne che non è possibile aggiornare nel riquadro Risultati.

  • Colonne basate su espressioni

  • Colonne basate su funzioni scalari definite dall'utente

  • Righe o colonne eliminate da un altro utente

  • Righe o colonne bloccate da un altro utente. Le righe bloccate possono in genere essere aggiornate appena vengono sbloccate.

  • Colonne timestamp o BLOB

Vedere anche

Concetti

Utilizzo di Visual Database Tools

Altre risorse

Progettazione di query e visualizzazioni

Riferimenti (Visual Database Tools)