ASP.NET MVC v praxi od A do Z, 2. díl – Databáze
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

ASP.NET MVC v praxi od A do Z, 2. díl – DatabázeASP.NET MVC v praxi od A do Z, 2. díl – Databáze

 

ASP.NET MVC v praxi od A do Z, 2. díl – Databáze

Google       Google       11. 8. 2009       17 094×

V tomto díle si připravíme databázi s párem tabulek, kterou bude naše aplikace hojně využívat.

Reklama
Reklama

V databázi budeme ukládat seznam naplánovaných večeří (v tabulce Dinners) a přihlášené hosty (v tabulce RSVP).

Začneme kliknutím pravého tlačítka na složku App_Data v projektu NerdDinner, zvolíme Add > New Item a z nabídky vybereme SQL Server Database, pojmenujeme ji NerdDinner.mdf. Všechny podobné věci se dávají právě do složky App_Data, protože se do ní nikdo jiný než aplikace nemůže dostat.

Vytvoření tabulek

Máme prázdnou databázi, takže teď si vytvoříme zmíněné dvě tabulky. Otevřeme si Server Explorer (Ctrl+W, L). Proklikáme se až k „adresáři“ Tables, na který klikneme pravým tlačítkem a zvolíme Add New Table. Podle následujícího obrázku nadefinujeme sloupce tabulky a sloupec DinnerID nastavíme jako primární pomocí označené ikonky klíče:

K tomu ještě sloupec DinnerID nastavíme jako tzv. „identity column“, to znamená, že se jeho hodnota bude při každém novém záznamu v tabulce inkrementovat o (například) jedničku. Uděláme to tak, že označíme sloupec DinnerID a v okýnku Column Properties najdeme položku Identity Specification, tu rozklikneme a položku „Is Identity“ nastavíme na Yes.

Nyní stiskneme Ctrl+S pro uložení tabulky a pojmenujeme ji Dinners.

Stejný postup použijeme i pro vytvoření tabulky RSVP. Sloupce budou tři (opět podle obrázku níže), sloupec RsvpID bude primární a identity.

Relace mezi tabulkami

Už máme v databázi dvě tabulky a dalším krokem bude nastavení tzv. „one to many“ relace. To nám umožní přiřadit jednu večeři více hostům (tedy jeden zápis v tabulce Dinners můžeme přiřadit nula nebo více zápisům v tabulce RSVP). Uděláme to tak, že sloupec DinnerID tabulky RSVP bude mít vazbu pomocí cizího klíče na sloupec DinnerID v tabulce Dinners.

Proto si otevřeme v Server Exploreru tabulku RSVP, zvolíme sloupec DinnerID, klikneme na něj pravým tlačítkem a zvolíme položku „Relationships“.

To zobrazí dialog, ve kterém můžeme nastavit relace:

Pro přidání relace klikneme na tlačítko Add v levém dolním rohu okna, po kliknutí se přidá relace pojmenovaná FK_RSVP_RSVP*. Rozbalíme větev Tables and Column Specification a klikneme na tlačítko vpravo (označené na obrázku).

V novém dialogu vidíme všechny tabulky a sloupce nějak zahrnuté v relaci, stejně jako jméno samotné relace. Primary Key Table nastavíme na „Dinners“ a sloupec DinnerID z tabulky Dinners nastavíme jako primární klíč. Jako cizí klíč nám poslouží sloupec RSVP.DinnerID. Potvrdíme tlačítkem OK.

Odteď bude každý řádek tabulky RSVP asociovaný s řádkem v tabulce Dinners. SQL server se postará o zaručení integrity dat za nás, tedy přesněji, zabrání nám přidat řádek do tabulky RSVP, pokud neodkazuje na platný řádek tabulky Dinners. Zároveň s tím nám zakáže smazat řádek z Dinners, pokud na něj odkazují nějaké řádky z RSVP.

Přidávání dat do databáze

Posledním krokem bude naplnění tabulky Dinners nějakými daty (večeřemi), abychom měli později s čím pracovat. Dělá se to tak, že klikneme v Server Exploreru na tabulku Dinners pravým tlačítkem a zvolíme Show Table Data a můžeme přidávat řádky. Bohatě bude stačit čtyři pět večeří, inspirovat se můžete na obrázku níže.

To je zase pro jednou vše, v dalším díle náš čeká sestavení modelu a pohrajeme si i s LINQ to SQL.

Zdroj: http://nerddinnerbook.s3.amazonaws.com/Part2.htm

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jakub KottnauerJakub studuje informatiku na FIT ČVUT, jeho oblíbenou platformou je .NET.
Web     Twitter     Facebook     LinkedIn    

Nové články

Obrázek ke článku Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Reklama
Reklama
Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

Obrázek ke článku Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý