Nejlepší odpověď
Primární klíč je speciální omezení pro sloupec nebo sadu sloupců. Omezení primárního klíče zajišťuje, že takto označené sloupce nemají žádné hodnoty NULL a že každá hodnota je jedinečná. Fyzicky je primární klíč implementován databázovým systémem pomocí jedinečného indexu a všechny sloupce v primárním klíči musí být prohlášeny za NENÍ NULL. Tabulka může mít pouze jeden primární klíč, ale může být složený (skládá se z více než jednoho sloupce).
A náhradní klíč je jakýkoli sloupec nebo sada sloupců, které lze deklarovat jako primární klíč namísto „skutečného“ nebo přirozeného klíč . Někdy může existovat několik přirozených klíčů, které lze deklarovat jako primární klíč, a všechny se nazývají kandidátské klíče . Náhrada je tedy klíčem kandidáta. Tabulka by ve skutečnosti mohla mít více než jeden náhradní klíč, i když by to bylo neobvyklé. Nejběžnějším typem náhradního klíče je přírůstkové celé číslo, například sloupec auto\_increment v MySQL, nebo sekvence v Oracle nebo sloupec identity na serveru SQL Server.
Výhody používání náhradních klíčů
Jak již bylo zmíněno, náhradní klíč obětuje některé původní souvislosti dat. Pro analytické účely však může být velmi užitečný z následujících důvodů:
- Náhradní klíče jsou jedinečné. Protože náhradní klíče jsou generováno systémem, je nemožné, aby systém vytvořil a uložil duplicitní hodnotu.
- Náhradní klíče používají jednotná pravidla pro všechny záznamy. Hodnota náhradního klíče je výsledkem programu, který vytváří hodnotu generovanou systémem. Jakýkoli klíč vytvořený v důsledku programu použije jednotná pravidla pro každý záznam.
- Náhradní klíče obstojí ve zkoušce času. Protože náhradní klíče postrádají jakýkoli kontext nebo obchodní význam, v budoucnu nebude nutné klíč měnit.
- Náhradní klíče umožňují neomezené hodnoty. Sekvenční, časové razítko a náhodné klíče nemají žádná praktická omezení jedinečných kombinací.
Odpověď
Většina databází je dnes opravdu databázovými systémy (DBMS). Skládají se ze dvou složek:
- databáze správná , která ukládá data spolu s metadaty, jako jsou vztahy, omezení atd …
- uživatelské rozhraní, kde vývojář nebo správce databáze zadává příkazy SQL.
Většina databází je dodávána s nástrojem příkazového řádku pro propojení s databází. Například MySQL poskytuje jednoduchý SQL shell s možnostmi editace vstupních řádků. Podporuje interaktivní a neinteraktivní použití. Při interaktivním použití se výsledky dotazu zobrazují ve formátu tabulky ASCII. Při neinteraktivním použití (například jako filtr) je výsledek uveden ve formátu odděleném tabulátory. Výstupní formát lze změnit pomocí možností příkazu.
Chcete-li vyvolat prostředí MySQL z příkazového řádku vašeho interpretu příkazů, zadejte něco jako následující:
shell> mysql --user=user\_name --password db\_name
Enter password: your\_password
Po přihlášení do databáze můžete provádět příkazy, například dotaz SELECT , proti:
shell>SELECT * FROM shop ORDER BY article;
+---------+--------+-------+
| article | dealer | price |
+---------+--------+-------+
| 1 | A | 3.45 |
| 1 | B | 3.99 |
| 2 | A | 10.99 |
| 3 | B | 1.45 |
| 3 | C | 1.69 |
| 3 | D | 1.25 |
| 4 | D | 19.95 |
+---------+--------+-------+
Můžete také vložit své příkazy SQL do souboru a pak řekněte mysql, aby přečetl svůj vstup z tohoto souboru. Chcete-li tak učinit, vytvořili byste textový soubor obsahující příkazy, které chcete provést. Poté vyvolejte mysql, jak je znázorněno zde:
shell> mysql db\_name
Někteří prodejci databází kromě příkazů nabízejí také klienty a nástroje GUI. linkový klient. V souladu s MySQL je jeho klientem GUI MySQL Workbench. MySQL Workbench, který je k dispozici pro Windows, Linux a Mac OS X, je zaměřen na databázové architekty, vývojáře a DBA. Poskytuje modelování dat, vývoj SQL a komplexní nástroje pro správu pro konfiguraci serveru, správu uživatelů, zálohování a mnoho dalšího.
Další nástroje
Kromě nástrojů nabízených samotnými prodejci databází je pro všechny populární k dispozici mnoho dalších otevřených zdrojů a komerčních nabídek. typy databází a cloudové služby. Pokud jde o rozdíly, bezplatné i komerční produkty se dobře hodí k jejich účelu.Který z nich použijete, bude spíše spíše funkcí toho, jaký typ práce děláte, než použitelností.
Poté, co jsem hodně pracoval s open source i komerčními produkty, jsem zjistil, že jsem postupně gravitoval směrem k druhé, protože efektivita práce se pro mou práci IT konzultanta stala důležitější. Můj osobní názor je, že komerční produkty vás mohou zvýšit produktivitou, protože zefektivňují běžné úkoly a zvyšují efektivitu.
Ve výsledku používám Navicat Premium vývoj databází a administrátorský klient již několik let. Ačkoli Navicat dělá klienty pro všechny populární databáze, Navicat Premium je jediný nástroj, který jsem použil a který se dokáže současně připojit k databázím MySQL, MariaDB, MongoDB, SQL Server, Oracle, PostgreSQL a SQLite z jedné aplikace. Je také plně kompatibilní s cloudovými databázemi, jako jsou Amazon RDS, Amazon Aurora, Amazon Redshift, Microsoft Azure, Oracle Cloud a Google Cloud.
Zde je snímek obrazovky hlavní obrazovky ve Windows:
Všechny produkty Navicat jsou k dispozici pro systémy Linux a macOS i Windows.
Zejména Editor dotazů mi pomáhá psát mé dotazy rychleji díky zvýraznění syntaxe, opakovaně použitelným a přizpůsobitelným úryvkům kódu a automatickým návrhům na obrázku níže:
Má dokonce i nástroj pro vytváření dotazů, což je velkou výhodou pro méně zkušené uživatele. Umožňuje vám vytvářet a upravovat dotazy vizuálně prakticky bez znalosti jazyka SQL!
Doufám, že to pomůže!
S pozdravem,
Adam