Vytvoření a spuštění aktualizačního dotazu

Vytvoření a spuštění aktualizačního dotazu

Poznámka: Snažíme se pro vás co nejrychleji zajistit aktuální obsah nápovědy ve vašem jazyce. Tato stránka byla přeložena automaticky a může obsahovat gramatické chyby nebo nepřesnosti. Naším cílem je to, aby pro vás byl její obsah užitečný. Mohli byste nám prosím dát ve spodní části této stránky vědět, jestli vám informace v článku pomohly? Pokud byste se rádi podívali na jeho anglickou verzi, najdete ji tady.

Aktualizační dotazy v databázích Accessu se používají k přidání, změně nebo odstranění informací v existujícím záznamu. Aktualizační dotaz si můžete představit jako účinnou variantu dialogového okna Najít a nahradit. Aktualizační dotaz nejde použít k přidání nových záznamů do databáze ani k odstranění záznamů z databáze.

K přidání nových záznamů do databáze se používá přidávací dotaz a k odstranění celých záznamů z databáze slouží odstraňovací dotaz.

Poznámka:  Tento článek se nevztahuje na webové aplikace pro Access (to je druh databází, které se navrhují v Accessu a publikují online).

V tomto článku

Přehled

Použití aktualizačního dotazu

Aktualizace dat jedné tabulky daty z jiné tabulky

Ukončení blokování dotazů režimem vypnutí

Verze v jazyce SQL: příkaz UPDATE

Přehled

Následující výčet uvádí podobnosti a rozdíly mezi funkcí Najít a nahradit a aktualizačním dotazem:

Aktualizační dotaz, podobně jako dialogové okno Najít a nahradit, umožňuje určit, která hodnota se má nahradit a jaká bude nová hodnota.

Na rozdíl od dialogového okna Najít a nahradit aktualizační dotaz umožňuje:

  • Použít kritéria nezávislá na hodnotě, kterou chcete nahradit

  • Aktualizovat mnoho záznamů v jednom průchodu

  • Změnit současně záznamy ve více než jedné tabulce

Omezení polí, jež lze aktualizovat

Aktualizační dotaz nelze použít k aktualizaci dat v následujících typech polí:

  • Počítaná pole:    Hodnoty v počítaných polích nejsou v tabulkách trvale uložené. Po výpočtu v Accessu se uchovávají jenom v dočasné paměti počítače. Počítaná pole nejsou uložená v trvalém úložišti, takže se nedají aktualizovat.

  • Pole ze souhrnného dotazu nebo křížového dotazu:    Hodnoty v těchto typech polí jsou počítané, a proto je nelze aktualizovat aktualizačním dotazem.

  • Pole typu Automatické číslo:    Hodnoty v polích typu Automatické číslo se mění jenom při přidání záznamu do tabulky.

  • Pole v dotazech vracejících jedinečné hodnoty a v dotazech vracejících jedinečné záznamy:    Hodnoty v těchto dotazech jsou sumarizovány. Některé z hodnot představují jediný záznam, zatímco jiné představují více než jeden záznam. Operace aktualizace není možná, protože nelze určit, které záznamy byly vyloučeny jako duplicitní, a proto nelze aktualizovat všechny potřebné záznamy. Toto omezení neplatí jen pro aktualizační dotazy, ale i v případě, že byste se pokusili aktualizovat data ručně zadáváním hodnot ve formuláři nebo datovém listu.

  • Pole ve sjednocovacím dotazu:    Data z polí ve sjednocovacím dotazu nelze aktualizovat, protože každý záznam, který se vyskytuje ve dvou nebo více zdrojích dat, se ve výsledku sjednocovacího dotazu vyskytuje pouze jednou. Některé duplicitní záznamy jsou z výsledků odebrány, a proto Access nemůže aktualizovat všechny potřebné záznamy.

  • Pole sloužící jako primární klíče:    V některých případech, například pokud je pole primárního klíče použito v relaci tabulek, nelze toto pole aktualizovat pomocí dotazu, jestliže nejprve nenastavíte relaci tak, aby byly automaticky kaskádově šířeny aktualizace.

    Poznámka: Při použití kaskádových aktualizací bude Access při změně hodnot primárních klíčů v nadřazené tabulce automaticky aktualizovat hodnoty cizího klíče.

Začátek stránky

Použití aktualizačního dotazu

Doporučený postup pro vytvoření aktualizačního dotazu spočívá v tom, že nejprve vytvoříte výběrový dotaz identifikující záznamy, které chcete aktualizovat, a následně převedete tento dotaz na aktualizační dotaz, jehož spuštěním lze aktualizovat záznamy. Tím, že data nejprve vyberete, můžete před skutečnou změnou jakýchkoli dat ověřit, že budete aktualizovat správné záznamy.

Tip: Před spuštěním aktualizačního dotazu proveďte zálohování databáze. Změny provedené aktualizační dotazem nelze vzít zpět, takže vytvořením zálohy zajistíte, aby bylo možné se v případě potřeby vrátit do výchozího stavu.

Postup zálohování databáze

  1. Klikněte na kartu Soubor a potom na Uložit jako. Pokud používáte Access 2010, klikněte na kartu Soubor a potom na Uložit a publikovat. Pokud používáte Access 2007, klikněte na tlačítko Microsoft Office > Spravovat > Zálohovat databázi.

  2. Na pravé straně klikněte v části Upřesnit na možnost Zálohovat databázi.

  3. V dialogovém okně Uložit jako zadejte název a umístění záložní kopie a klikněte na tlačítko Uložit.

    Access zavře původní soubor, vytvoří jeho záložní kopii a znovu otevře původní soubor.

    Chcete-li se vrátit k záloze, zavřete původní soubor a přejmenujte jej tak, aby záložní kopie mohla používat název původní verze. Přiřaďte název původní verze záložní kopii a potom otevřete přejmenovanou záložní kopii v Accessu.

V tomto oddílu

Krok 1: Vytvoření výběrového dotazu identifikujícího záznamy, které chcete aktualizovat

Krok 2: Aktualizace záznamů

Krok 1: Vytvoření výběrového dotazu identifikujícího záznamy, které chcete aktualizovat

  1. Otevřete databázi obsahující záznamy, které chcete aktualizovat.

  2. Na kartě Vytvoření klikněte ve skupině Dotazy na Návrh dotazu. Poznámka: Pokud používáte Access 2007, na kartě Vytvoření klikněte ve skupině Jiné na Návrh dotazu.

    Otevře se návrhář dotazu a zobrazí se dialogové okno Zobrazit tabulku.

  3. Klikněte na kartu Tabulky.

  4. Vyberte tabulku nebo tabulky obsahující záznamy, které chcete aktualizovat, a klikněte na tlačítko Přidat a potom na tlačítko Zavřít.

    Tabulka nebo tabulky se zobrazí jako jedno nebo více oken v návrháři dotazu a tato okna obsahují všechna pole jednotlivých tabulek. Na tomto obrázku je znázorněn návrhář dotazu s typickou tabulkou.

    Tabulka v návrháři dotazů

    1. Tabulka v návrháři dotazu

    2. Návrhová mřížka dotazu

  5. V oknech s tabulkami poklikejte na pole, která chcete aktualizovat. Vybraná pole se zobrazí v návrhové mřížce dotazu v řádku Pole.

    V návrhové mřížce dotazu lze přidat jedno pole tabulky do každého sloupce.

    Chcete-li rychle přidat všechna pole v tabulce, poklikejte v okně tabulky na hvězdičku (*) v horní části seznamu polí. Na tomto obrázku je znázorněna návrhová mřížka dotazu se všemi přidanými poli.

    Dotaz se všemi přidanými poli tabulky

  6. Chcete-li omezit výsledky dotazu na základě hodnot polí, zadejte do pole Kritéria v návrhové mřížce dotazu kritéria, jejichž pomocí chcete omezit výsledky.

    Tabulka s příklady kritérií

    Následující tabulka uvádí příklady kritérií a vysvětluje jejich vliv na výsledky dotazu.

    Poznámka: V mnoha příkladech v této tabulce jsou použity zástupné znaky, které umožní dosažení vyšší flexibility nebo výkonu dotazu.

    Kritérium

    Vliv

    >234

    Vrátí všechna čísla větší než 234. Chcete-li nalézt všechna čísla menší než 234, zadejte < 234.

    >= "Novák"

    Vrátí všechny záznamy od Novák až do konce abecedy.

    Between #2.2.2017# And #1.12.2017#

    Vrátí data od 2. 2. 2017 do 1. 12. 2017 (ANSI-89). Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo křížků (#) jednoduché uvozovky ('). Příklad: Between '2.2.2007' And '1.12.2007'.

    Not "Německo"

    Vyhledá všechny záznamy, ve kterých obsah pole není přesně „Německo“. Toto kritérium vrátí i záznamy, které kromě textu „Německo“ obsahují ještě další znaky, například „Německo (euro)“ nebo „Evropa (Německo)“.

    Not "T*"

    Vyhledá všechny záznamy s výjimkou těch, které začínají písmenem T. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

    Not "*t"

    Vyhledá všechny záznamy, které nekončí písmenem t. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

    In(Kanada,VB)

    V seznamu vyhledá všechny záznamy obsahující slova Kanada nebo VB.

    Like "[A-D]*"

    V textovém poli vyhledá všechny záznamy začínající na písmena A až D. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

    Like "*ar*"

    Vyhledá všechny záznamy obsahující po sobě jdoucí písmena „ar“. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo hvězdičky (*) znak procenta (%).

    Like "Maison Dewe?"

    Vyhledá všechny záznamy začínající slovem Maison a obsahující druhý řetězec o délce pět písmen, jehož první čtyři písmena jsou Dewe a poslední písmeno je libovolné. Pokud se v databázi používá sada zástupných znaků ANSI-92, používejte místo otazníku (?) znak podtržítka (_).

    #2.2.2017#

    Vyhledá všechny záznamy ze 2. 2. 2017. Pokud se v databázi používá sada zástupných znaků ANSI-92, ohraničte datum místo křížků (#) jednoduchými uvozovkami ('), například '2.2.2017'.

    < Date() - 30

    Použije funkci Date k vrácení všech dat starších než 30 dní.

    Date()

    Použije funkci Date k vrácení všech záznamů obsahujících aktuální datum.

    Between Date() And DateAdd("M"; 3; Date())

    Použije funkce Date a DateAdd k vrácení všech záznamů obsahujících datum mezi aktuálním datem a datem za tři měsíce.

    Is Null

    Vrátí všechny záznamy obsahující hodnotu Null (prázdná nebo nedefinovaná hodnota).

    Is Not Null

    Vrátí všechny záznamy, které obsahují nějakou hodnotu.

    ""

    Vrátí všechny záznamy obsahující řetězec nulové délky. Řetězec nulové délky použijte, chcete-li přidat hodnotu do požadovaného pole, ale ještě nevíte, o jakou hodnotu se jedná. Pole může například vyžadovat faxové číslo, ale některý z vašich zákazníků možná nevlastní fax. V takovém případě zadejte místo faxového čísla dvojici uvozovek bez mezery mezi nimi ("").

  7. Na kartě Návrh klikněte ve skupině Výsledky na tlačítko Spustit.

  8. Ověřte, zda dotaz vrací záznamy, které chcete aktualizovat.

  9. Chcete-li odebrat pole, která nechcete zahrnout do návrhu dotazu, vyberte je a stiskněte klávesu DELETE.

  10. Chcete-li přidat pole, která chcete zahrnout do návrhu dotazu, přetáhněte další pole do návrhové mřížky dotazu.

Krok 2: Aktualizace záznamů

  1. Na kartě Návrh klikněte ve skupině Typ dotazu na položku Aktualizovat.

    Tento postup popisuje změnu výběrového dotazu na aktualizační dotaz. Při jeho použití Access přidá do návrhové mřížky dotazu řádek Aktualizovat do. Následující obrázek znázorňuje aktualizační dotaz, který vrátí veškerý majetek zakoupený po 5. lednu 2005 a u všech záznamů splňujících kritérium změní umístění na Sklad 3.

    Aktualizační dotaz s jediným kritériem aktualizace

  2. Vyhledejte pole obsahující data, která chcete změnit, a na řádek Aktualizovat do pro dané pole zadejte výraz (kritéria změny).

    Na řádku Aktualizovat do můžete použít libovolný platný výraz.

    Tabulka s příklady výrazů

    Následující tabulka uvádí příklady výrazů a příslušných změn dat.

    Výraz

    Výsledek

    "Prodejce"

    Změní hodnotu v textovém poli na „Prodejce“.

    #10.8.17#

    Změní hodnotu data v poli typu Datum a čas na 10.8.17.

    Ano

    V poli typu Ano/Ne změní hodnotu Ne na hodnotu Ano.

    "ČD" & [ČísloDílu]

    Přidá na začátek každého určeného čísla dílu text „ČD".

    [JednotkováCena] * [Množství]

    Vrátí součin hodnot v polích JednotkováCena a Množství.

    [Dopravné] * 1,5

    Zvýší hodnotu v poli Dopravné o 50 procent.

    DSum("[Množství] * [JednotkováCena]";
    "Rozpis objednávek"; "[KódVýrobku]=" & [KódVýrobku])

    U záznamů, jejichž hodnota KódVýrobku v aktuální tabulce odpovídá hodnotě KódVýrobku v tabulce Rozpis objednávek, tento výraz aktualizuje celkový prodej vynásobením hodnoty v poli Množství hodnotou v poli JednotkováCena. Výraz používá funkci DSum, protože tato funkce umožňuje práci s více tabulkami a poli tabulek.

    Right([PSČPříjemce]; 5)

    Zkrátí textový nebo číselný řetězec o znaky umístěné vlevo a ponechá 5 znaků umístěných nejvíce vpravo.

    IIf(IsNull([JednotkováCena]); 0; [JednotkováCena])

    Změní hodnotu Null (neznámou nebo nedefinovanou hodnotu) v poli JednotkováCena na hodnotu nula (0).

  3. Na kartě Návrh klikněte ve skupině Výsledky na tlačítko Spustit.

    Zobrazí se upozornění.

  4. Chcete-li dotaz spustit a aktualizovat data, klikněte na tlačítko Ano.

    Poznámka: Po spuštění dotazu mohou některá pole v sadě výsledků chybět. Pokud dotaz obsahuje pole, která nejsou aktualizována, nebudou tato pole ve výchozím nastavení ve výsledcích zobrazena. Dotaz může například obsahovat pole identifikátorů ze dvou tabulek, která pomohou zajistit, aby dotaz identifikoval a aktualizoval správné záznamy. Pokud tato pole neaktualizujete, nebudou ve výsledcích zobrazena.

Začátek stránky

Aktualizace dat jedné tabulky daty z jiné tabulky

Potřebujete-li aktualizovat data jedné tabulky daty z jiné tabulky, mějte na paměti následující pravidlo: Datové typy zdrojových a cílových polí se musí shodovat nebo být kompatibilní.

Aktualizujete-li data v jedné tabulce daty z jiné tabulky a místo shodných datových typů použijete kompatibilní datové typy, Access převede datové typy těchto polí v cílové tabulce. Důsledkem toho mohou být některá data v cílových polích zkrácena (odstraněna). V části Omezení při převodech datových typů jsou popsány povolené a zakázané způsoby převodu datových typů. V tabulce je rovněž vysvětleno, kdy převod datového typu může změnit nebo odstranit část dat nebo veškerá data v poli a která data pravděpodobně budou odstraněna.

Proces aktualizace dat jedné tabulky daty z jiné tabulky se skládá z následujících obecných kroků:

  1. Vytvořte aktualizační dotaz a přidejte do něj zdrojovou a cílovou tabulku.

  2. Propojte tyto tabulky pomocí polí obsahujících související informace.

  3. Přidejte názvy cílových polí v návrhové mřížce dotazu na řádek Pole.

  4. Přidejte názvy zdrojových polí v návrhové mřížce dotazu na řádek Aktualizovat do. Použijte následující syntaxi: [zdrojová_tabulka].[zdrojové_pole].

Postup v této části předpokládá použití dvou podobných tabulek. V tomto příkladu tabulka Klienti, jež je umístěna v databázi, kterou jste právě převzali, obsahuje aktuálnější data než tabulka Zákazníci. Změnily se některé jména a adresy manažerů. Proto jste se rozhodli tabulku Zákazníci aktualizovat daty z tabulky Klienti.

Tabulka Klienti

Kód klienta

Jméno

Adresa

Město

Stát/kraj

PSČ

Země

Telefon

Kontakt

1

Baldwin Museum of Science

1 Main St.

New York

NY

12345

USA

(505) 555-2122

Josh Barnhill

2

Aerolinky Blue Yonder

52 1st St.

Boston

MA

23456

USA

(104) 555-2123

Waleed Heloo

3

Coho Winery

3122 75th Ave. S.W.

Seattle

WA

34567

USA

(206) 555-2124

Pica Guido

4

Contoso Pharmaceuticals

1 Contoso Blvd.

Londýn

Bucks

NS1 EW2

Velká Británie

(171) 555-2125

Zoltan Harmuth

5

Fourth Coffee

Calle Smith 2

Mexico City

56789

Mexiko

(7) 555-2126

Julian Price

6

Consolidated Messenger

3123 75th St. S.

Seattle

WA

34567

USA

(206) 555-2125

Miles Reid

7

Graphic Design Institute

1587 Office Pkwy

Tampa

FL

87654

USA

(916) 555-2128

Tzipi Butnaru

8

Litware, Inc.

3 Microsoft Way

Portland

OR

31415

USA

(503) 555-2129

Brian Smith

9

Tailspin Toys

4 Microsoft Way

Portland

OR

31415

USA

(503) 555-2233

Phil Gibbins

Tabulka Zákazníci

Číslo zákazníka

Jméno

Adresa

Město

Stát/kraj

PSČ

Země či oblast

Telefon

Nadřízený

1

Baldwin Museum of Science

1 Main St.

New York

NY

12345

USA

(505) 555-2122

Steve Riley

2

Aerolinky Blue Yonder

52 1st St.

Boston

MA

23456

USA

(104) 555-2123

Waleed Heloo

3

Coho Winery

3122 75th Ave. S.W.

Seattle

WA

34567

USA

(206) 555-2124

Pica Guido

4

Contoso Pharmaceuticals

1 Contoso Blvd.

Londýn

Bucks

NS1 EW2

Velká Británie

(171) 555-2125

Zoltan Harmuth

5

Fourth Coffee

Calle Huevos 134

Mexico City

56789

Mexiko

(7) 555-2126

Julian Price

6

Consolidated Messenger

3123 75th St. S.

Seattle

WA

34567

USA

(206) 555-2125

Christine Hughes

7

Graphic Design Institute

67 Big St.

Tampa

FL

87654

USA

(916) 555-2128

Dana Birkby

8

Litware, Inc.

3 Microsoft Way

Portland

OR

31415

USA

(503) 555-2129

Jesper Aaberg

9

Tailspin Toys

4 Microsoft Way

Portland

OR

31415

USA

(503) 555-2233

Phil Gibbins

Při provádění tohoto postupu mějte na paměti, že ačkoli se datové typy pro jednotlivá pole tabulek nemusí shodovat, musí být kompatibilní. Aplikace Access musí být schopna převést data ve zdrojové tabulce na datový typ, který je možné použít v cílové tabulce. V některých případech mohou být procesem převodu některá data odstraněna. Další informace o omezeních při převodech datových typů naleznete v části Omezení při převodech datových typů.

Vytvoření a spuštění aktualizačního dotazu

Poznámka: Následující postup platí při použití dvou předchozích ukázkových tabulek. Kroky lze přizpůsobit pro vlastní data.

  1. Na kartě Vytvoření klikněte ve skupině Dotazy na Návrh dotazu. Poznámka: Pokud používáte Access 2007, na kartě Vytvoření klikněte ve skupině Jiné na Návrh dotazu.

  2. V dialogovém okně Zobrazit tabulku klikněte na kartu Tabulky.

  3. Dvojitým kliknutím na zdrojovou a cílovou tabulku je přidejte do dotazu a potom klikněte na tlačítko Zavřít. Každá tabulka se v návrháři dotazu zobrazí ve vlastním okně.

  4. Aplikace Access ve většině případů propojí související pole v dotazu automaticky. Chcete-li pole obsahující související informace propojit ručně, přetáhněte související pole z jedné tabulky na ekvivalentní pole ve druhé tabulce.

    Při použití výše uvedených ukázkových tabulek například přetáhněte pole Kód klienta na pole Číslo zákazníka. Aplikace Access vytvoří mezi těmito poli v obou tabulkách relaci, která bude použita k propojení všech souvisejících záznamů.

  5. Na kartě Návrh klikněte ve skupině Typ dotazu na položku Aktualizovat.

  6. V cílové tabulce poklikejte na pole, která chcete aktualizovat. Jednotlivá pole se zobrazí v návrhové mřížce dotazu na řádku Pole.

    Používáte-li ukázkové tabulky, přidejte všechna pole kromě pole Kód zákazníka. Všimněte si, že název cílové tabulky se zobrazí v návrhové mřížce na řádku Tabulka.

  7. Na řádek dotazu Aktualizovat do přidejte do každého sloupce obsahujícího cílové pole název zdrojové tabulky a pole ve zdrojové tabulce, jež odpovídá poli v cílové tabulce. Použijte následující syntaxi: [Tabulka].[Pole], kde názvy tabulky a pole jsou uvedeny v hranatých závorkách a odděleny tečkou.

    Na tomto obrázku je znázorněna část návrhové mřížky používající ukázkové tabulky. Všimněte si syntaxe názvů tabulky a pole na řádku Aktualizovat do.

    Dotaz, který aktualizuje jednu tabulku daty z jiné tabulky

    Mějte na paměti, že názvy tabulky a polí je nutné zadat na řádek Aktualizovat do správně a že v názvech původní tabulky a polí je nutné dodržet interpunkci. Použití velkých písmen však není nutné dodržet.

  8. Na kartě Návrh klikněte ve skupině Výsledky na tlačítko Spustit.

  9. Po zobrazení výzvy k potvrzení aktualizace klikněte na tlačítko Ano.

Omezení při převodech datových typů

V následující tabulce jsou uvedeny datové typy používané v Accessu, vysvětlena všechna omezení při převodech datových typů a stručně popsány ztráty dat, k nimž může dojít během převodu.

Převod na tento typ

Z tohoto typu

Změny nebo omezení

Text

Zápis

Access odstraní všechno kromě prvních 255 znaků.

Číslo

Bez omezení

Datum a čas

Bez omezení

Měna

Bez omezení

Automatické číslo

Bez omezení

Ano/Ne

Hodnota -1 (Ano v poli typu Ano/Ne) bude převedena na hodnotu Ano. Hodnota 0 (Ne v poli typu Ano/Ne) bude převedena na hodnotu Ne.

Hypertextový odkaz

Aplikace Access zkrátí odkazy delší než 255 znaků.

Zápis

Text

Bez omezení

Číslo

Bez omezení

Datum a čas

Bez omezení

Měna

Bez omezení

Automatické číslo

Bez omezení

Ano/Ne

Hodnota -1 (Ano v poli typu Ano/Ne) bude převedena na hodnotu Ano. Hodnota 0 (Ne v poli typu Ano/Ne) bude převedena na hodnotu Ne.

Hypertextový odkaz

Bez omezení

Číslo

Text

Text musí sestávat z čísel, platné měny a oddělovačů desetinných míst. Počet znaků v poli Text musí spadat do velikosti nastavené pro pole Číslo.

Zápis

Pole typu Memo musí obsahovat pouze text, platnou měnu a oddělovače desetinných míst. Počet znaků v poli typu Memo musí spadat do velikosti nastavené pro pole Číslo.

Číslo, ale s odlišnou velikostí pole nebo přesností

Hodnoty nesmí být větší nebo menší než hodnoty, jež je možné do pole s novou velikostí uložit. Změna přesnosti může způsobit zaokrouhlení některých hodnot.

Datum a čas

Data, jež je možné převést, závisí na velikosti číselného pole. Access ukládá všechna data jako pořadová data a hodnoty data jako celá čísla s dvojitou přesností a plovoucí desetinnou čárkou.

Access používá 30. prosinec 1899 jako datum 0. Kalendářní data, která nespadají do období od 18. dubna 1899 do 11. září 1900, překračují velikost pole typu Byte. Data nespadající do období od 13. dubna 1810 do 16. září 1989 překračují velikost pole typu Celé číslo.

Z důvodu přizpůsobení všem možným datům nastavte vlastnost Velikost pole u pole typu Číslo na hodnotu Dlouhé celé číslo nebo větší.

Měna

Hodnoty nesmí překročit (nebo klesnout pod) nastavený limit velikosti daného pole. Pole typu Měna lze například převést na pole typu Celé číslo pouze v případě, že hodnota je větší než 255 a menší než 32 767.

Automatické číslo

Hodnoty musí spadat do omezení velikosti nastaveného pro toto pole.

Ano/Ne

Hodnoty Ano budou převedeny na -1. Hodnoty Ne budou převedeny na 0.

Datum a čas

Text

Původní text musí být rozpoznatelný jako datum nebo kombinace data a času. Například 18. leden 2007.

Zápis

Původní text musí být rozpoznatelný jako datum nebo kombinace data a času. Například 18. leden 2007.

Číslo

Hodnota musí spadat do rozsahu od -657 434 do 2 958 465,99998843.

Měna

Hodnota musí spadat do rozsahu od -657 434 Kč do 2 958 465,9999 Kč.

Automatické číslo

Hodnota musí být vyšší než -657 434 a nižší než 2 958 466.

Ano/Ne

Hodnota -1 (Ano) bude převedena na datum 29. prosinec 1899. Hodnota 0 (Ne) bude převedena na čas půlnoci (0:00).

Měna

Text

Text musí sestávat z čísel a platných oddělovačů.

Zápis

Text musí sestávat z čísel a platných oddělovačů.

Číslo

Bez omezení

Datum a čas

Bez omezení, hodnota však může být zaokrouhlena.

Automatické číslo

Bez omezení

Ano/Ne

Hodnota -1 (Ano) bude převedena na hodnotu 1 Kč. Hodnota 0 (Ne) bude převedena na hodnotu 0 Kč.

Automatické číslo

Text

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Zápis

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Číslo

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Datum a čas

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Měna

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Ano/Ne

Není povoleno, pokud pole typu Automatické číslo slouží jako primární klíč.

Ano/Ne

Text

Původní text musí obsahovat jen hodnoty Ano, Ne, Pravda, Nepravda, Zapnuto nebo Vypnuto.

Zápis

Původní text musí obsahovat jen hodnoty Ano, Ne, Pravda, Nepravda, Zapnuto nebo Vypnuto.

Číslo

Nula a hodnota Null budou převedeny na Ne, všechny ostatní hodnoty na Ano.

Datum a čas

Hodnota Null nebo 0:00:00 bude převedena na Ne, všechny ostatní hodnoty na Ano.

Měna

Nula a hodnota Null budou převedeny na Ne, všechny ostatní hodnoty na Ano.

Automatické číslo

Všechny hodnoty budou převedeny na Ano.

Hypertextový odkaz

Text

Jestliže původní text obsahuje platnou webovou adresu, například adatum.com, www.adatum.com nebo http://www.adatum.com, bude text převeden na hypertextový odkaz. Jiné hodnoty převede aplikace Access následujícím způsobem: Text se zobrazí jako podtržený, přičemž po přechodu ukazatele nad odkaz se kurzor změní, avšak odkazy nebudou funkční. Text může obsahovat libovolný platný webový protokol včetně http://, gopher://, telnet://, ftp:// nebo wais://.

Zápis

Viz předchozí položka. Platí stejná omezení.

Číslo

Není povoleno, pokud je pole typu Číslo součástí relace. Je-li původní hodnota ve tvaru platné IP adresy (čtyři trojice čísel oddělené tečkami: nnn.nnn.nnn.nnn) a čísla odpovídají webové adrese, bude výsledkem převodu platný odkaz. V ostatních případech Access na začátek každé hodnoty přidá předponu http:// a výsledné odkazy nebudou platné.

Datum a čas

Access připojí na začátek každé adresy http://, ale skoro žádné výsledné odkazy nebudou funkční.

Měna

Access připojí na začátek každé hodnoty http://, ale podobně jako u kalendářních dat nebudou skoro žádné výsledné odkazy funkční.

Automatické číslo

Není povoleno, jestliže je pole typu Automatické součástí relace. Access připojí před každou hodnotu řetězec http://, avšak téměř žádné výsledné odkazy nebudou funkční.

Ano/Ne

Aplikace Access převede všechny hodnoty Ano na číslo -1 a všechny hodnoty Ne na 0 a připojí před každou hodnotu řetězec http://. Výsledné odkazy nebudou funkční.

Začátek stránky

Ukončení blokování dotazů režimem vypnutí

Jestliže spustíte akční dotaz a zdá se, že se nic neděje, zkontrolujte, zda stavový řádek Accessu neobsahuje tuto zprávu:

Akce či událost byly blokovány režimem vypnutí.

Jestliže databáze není uložena v důvěryhodném umístění nebo není podepsána a nastavena jako důvěryhodná, jsou ve výchozím nastavení aplikace Access všechny akční dotazy (aktualizační, přidávací, odstraňovací a vytvářecí dotazy) zakázány. Pokud jste žádnou z uvedených akcí neprovedli, můžete dotaz povolit pouze pro aktuální relaci databáze kliknutím na možnost Povolit obsah na panelu zpráv.

Začátek stránky

Verze v jazyce SQL: příkaz UPDATE

Pokud umíte pracovat s jazykem SQL, můžete také zapsat příkaz UPDATE v zobrazení SQL. Chcete-li použít jazyk SQL, vytvořte nový prázdný dotaz a přepněte do zobrazení SQL.

V tomto oddílu je popsána syntaxe a uveden příklad příkazu UPDATE.

Syntaxe

UPDATE tabulka     SET nová_hodnota     WHERE kritéria;

Příkaz UPDATE má následující části:

Část

Popis

tabulka

Název tabulky obsahující data, která chcete změnit

nová_hodnota

Výraz určující hodnotu, která má být vložena do konkrétního pole v aktualizovaných záznamech

kritéria

Výraz určující, které záznamy budou aktualizovány. Aktualizovány budou pouze záznamy vyhovující tomuto výrazu.

Poznámky

Příkaz UPDATE je užitečný zejména v případech, kdy je třeba změnit mnoho záznamů nebo kdy se měněné záznamy nacházejí v několika tabulkách.

Současně lze změnit několik polí. V následujícím příkladu jsou hodnoty v poli MnožstvíObjednávky zvýšeny o 10 procent a hodnoty v poli Dopravné zvýšeny o 3 procenta pro dopravce ve Velké Británii:

UPDATE Orders

SET OrderAmount = OrderAmount * 1.1,

Freight = Freight * 1.03

WHERE ShipCountry = 'UK';

Začátek stránky

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×