Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:SQL Server
In molti casi, è possibile aggiornare il set di risultati visualizzato nel riquadro Risultati (Visual Database Tools). Tuttavia, in alcuni casi non è possibile.
In generale, per aggiornare i risultati, gli strumenti di Progettazione query e Progettazione viste (Visual Database Tools) devono disporre di informazioni sufficienti per identificare in modo univoco la riga nella tabella. Un esempio è se la query include una chiave primaria nell'elenco di output. Inoltre, è necessario disporre di autorizzazioni sufficienti per aggiornare il database.
Se la query è basata su una vista, potrebbe essere possibile aggiornarla. Si applicano le stesse linee guida, ad eccezione del fatto che si applicano alle tabelle sottostanti nella vista, non solo alla vista stessa.
Nota
Progettazione query e Progettazione viste non è in grado di determinare in anticipo se è possibile aggiornare un set di risultati in base a una visualizzazione. Pertanto, visualizza tutte le visualizzazioni, anche se potrebbe non essere possibile aggiornarle.
La tabella seguente riepiloga istanze specifiche in cui è possibile e potrebbe non essere in grado di aggiornare i risultati della query nel riquadro Risultati. In molti casi, il database in uso determina se è possibile aggiornare i risultati delle query.
| Quesito | È possibile aggiornare i risultati? |
|---|---|
| Query basata su una tabella con chiave primaria nell'elenco di output | Sì (tranne quelli elencati di seguito). |
| Query basata su una tabella senza indice univoco e senza chiave primaria | Dipende dalla query e dal database. Alcuni database consentono aggiornamenti se sono disponibili informazioni sufficienti per identificare in modo univoco i record. |
| Query basata su più tabelle che non sono unite in join | No |
| Query basata sui dati contrassegnati come di sola lettura nel database | No |
| Query basata su una vista che coinvolge una tabella priva di vincoli | Sì (tranne quelli elencati di seguito). |
| Query basata su tabelle collegate tramite una relazione uno-a-uno | Sì (tranne quelli elencati di seguito). |
| Query basata su tabelle collegate da una relazione uno-a-molti | Solitamente. |
| Query basata su tre o più tabelle in cui è presente una relazione molti-a-molti | No |
| Query basata su una tabella per cui non viene concessa l'autorizzazione di aggiornamento | Può eliminare ma non aggiornare. |
| Query basata su una tabella per cui non viene concessa l'autorizzazione di eliminazione | Può aggiornare ma non eliminare. |
| Query di aggregazione | No |
| Una query basata su una sottoquery che contiene totali o funzioni di aggregazione | No |
Query che include la DISTINCT parola chiave per escludere righe duplicate |
No |
Query la cui FROM clausola include una funzione definita dall'utente che restituisce una tabella e la funzione definita dall'utente contiene più istruzioni select |
No |
Query la cui FROM clausola include una funzione definita dall'utente inline |
Sì. |
Inoltre, potrebbe non essere possibile aggiornare colonne specifiche nei risultati della query. L'elenco seguente riepiloga tipi specifici di 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 non appena vengono sbloccate)
- Timestamp o colonne BLOB