Pravidla pro aktualizaci výsledků
V mnoha případech můžete aktualizovat sadu do výsledků podokně výsledků.Však v některých případech nelze.
Obecně za účelem aktualizace výsledků, dotazu a Návrhář zobrazení musí mít dostatečné informace k jednoznačné identifikaci řádek v tabulce.Je-li dotaz v seznamu výstup obsahuje primární klíč.Kromě toho musí mít dostatečná oprávnění k aktualizaci databáze.
Pokud je dotaz založen na zobrazení, pravděpodobně jej aktualizovat.Stejné pokyny vztahují, s výjimkou, že se vztahují k podkladové tabulky, zobrazení, nikoli pouze samotného zobrazení.
[!POZNÁMKA]
Dotaz a Návrhář zobrazení nelze předem určit zda můžete aktualizovat sadu výsledků založenou na zobrazení.Proto zobrazí všechny pohledy, i když pravděpodobně nebude možné je aktualizovat.
Následující tabulka shrnuje specifické instance, které může a nemusí být schopen aktualizovat výsledky dotazu v podokně výsledků.Databáze, kterou používáte v mnoha případech určuje, zda můžete aktualizovat výsledky dotazu.
Dotaz |
Aktualizované výsledky |
---|---|
Dotaz založený na jedné tabulce s primárním klíčem v seznamu výstup |
Ano (s výjimkou uvedených níže). |
Dotaz založený na tabulce s žádný jedinečný index a bez primárního klíče |
Závisí na databázi a dotaz.Některé databáze povolit aktualizace, pokud je k dispozici jednoznačně identifikuje záznamy dostatečné informace. |
Dotaz založený na více tabulkách, které nejsou připojeny |
Ne. |
Na základě dat dotazu označeny jen pro čtení v databázi |
Ne. |
Dotaz založený na zobrazení, která zahrnuje jednu tabulku s bez omezení |
Ano (s výjimkou uvedených níže). |
Dotaz na základě tabulky spojeny pomocí vztahu 1: 1 |
Ano (s výjimkou uvedených níže). |
Dotaz založený na tabulkách, které jsou spojeny s vztah 1:- |
Obvykle. |
Dotaz založený na třech a více tabulkách s je vztah n: n |
Ne. |
Dotaz založený na tabulce, které aktualizace není uděleno oprávnění |
Můžete odstranit, ale není aktualizace. |
Dotaz na základě oprávnění odstraňovat tabulky, pro které není uděleno. |
Můžete aktualizovat, ale nikoli odstranit. |
Agregační dotaz |
Ne. |
Dotaz je založen na poddotazu obsahujícího souhrny nebo agregační funkce |
Ne. |
Dotaz, který obsahuje klíčové slovo DISTINCT vyloučit duplicitní řádky. |
Ne. |
Dotaz obsahuje klauzuli FROM, jehož uživatelem definované funkce, která vrací tabulku a uživatelem definované funkce obsahuje více příkazů select |
Ne. |
Dotaz obsahuje klauzuli FROM, jehož vložené uživatelem definované funkce |
Ano. |
Kromě toho nebude pravděpodobně možné aktualizovat určité sloupce ve výsledku dotazu.Následující seznam shrnuje zvláštní typy sloupců, které nelze aktualizovat v podokně výsledků.
Sloupce založené na výrazech
Sloupce na základě skalární uživatelem definované funkce
Řádky nebo sloupce odstraněn jiným uživatelem
Řádky nebo sloupce uzamčené jiným uživatelem (uzamčené řádky lze obvykle aktualizovat ihned, jakmile jsou odemčené)
Sloupce časového razítka nebo BLOB
Viz také
Koncepty
Práce, kterou můžete provést pomocí nástroje Visual databáze