Přehled lokálních dat

Při použití místních dat připojujete aplikaci k databázovém souboru na místním počítači místo databáze na samostatném serveru.Například můžete připojit aplikaci, kterou vyvíjíte v aplikaci Visual Studio k následujícím lokálním databázovým souborům:

  • Databázové soubory SQL Server Express LocalDB (.mdf)

  • Databázové soubory SQL Server Express (.mdf)

  • Soubory databáze Microsoft Access (MDB)

Následující tabulka obsahuje odkazy na témata, která popisují způsob připojení aplikace k místním datům:

Téma

Description

Návod: Vytvoření lokálního databázového souboru v sadě Visual Studio

Obsahuje podrobné pokyny pro vytvoření místního databázového souboru, který slouží k testování funkcí dat a vytváření aplikací.

Návod: Připojování k datům v lokálním databázovém souboru (Windows Forms)

Obsahuje podrobné pokyny pro připojení k databázi SQL Server Express LocalDB při vytvoření jednoduché aplikace pro systém Windows.

Návod: Připojování k datům v databázi aplikace Access (Windows Forms)

Obsahuje podrobné pokyny pro připojení k databázi aplikace Microsoft Access.

Postupy: Připojení k databázi Northwind

Obsahuje pokyny pro připojení k ukázkové databázi Northwind v SQL Server, SQL Server Compact, SQL Server Express a Access.

Po vytvoření zdroje dat a jeho konfigurace pro přístup k místnímu datovému souboru, můžete s daty pracovat pomocí stejných technologií a objektů, které můžete použít k práci s daty z jakéhokoli jiného zdroje.Další informace naleznete v tématu Vytváření datových aplikací.

Začlenění databáze do aplikace

Pokud se připojujete k místním datům, nelze se pouze připojit k souboru databáze, ale musíte také provést integraci do vaší aplikace.Můžete například otevřít nabídku Projekt, vyhledat existující soubor SDF, MDF nebo MDB a potom ho přidat do projektu.

Pokud chcete přidat místní datové soubory, vytvoříte zadanou datovou sadu a dynamický připojovací řetězec, který odkazuje na soubor databáze v aplikaci.Při přidání databázového souboru do projektu použijte Průvodce konfigurací zdroje dat, chcete-li určit objekty, které chcete zahrnout.

[!POZNÁMKA]

Připojení můžete automaticky nakonfigurovat a spustit Průvodce konfigurací zdroje dat přetažením souboru .sdf, .mdf nebo .mdb z Průzkumníka souborů do Průzkumníka řešení.Poté můžete určit objekty, které chcete použít v aplikaci.

Použijete-li Průvodce konfigurací zdroje dat pro tvorbu zdroje dat pro místní datový soubor, budete vyzváni k zahrnutí souboru do projektu.Pokud ho nezadáte, aplikace bude obsahovat pouze připojovací řetězec, ke kterému pevně cesta odkazuje, nikoli skutečný soubor dat.Další informace naleznete v tématu Postupy: Správa lokálních datových souborů ve vašem projektu.

Po dokončení průvodce se soubor databáze a datová sada zobrazí v okně Průzkumník řešení/Průzkumník databáze a databázové objekty, které jste určili, se zobrazí v okně Zdroje dat.Přetažením položek z okna Zdroje dat do formuláře můžete vytvořit ovládací prvky vázané na podkladová data.Pokud chcete otevřít okno Zdroje dat, otevřete nabídku Data a zvolte Zobrazit zdroje dat.Další informace naleznete v tématu Vázání ovládacích prvků k datům v sadě Visual Studio.

Použití databázového souboru

Než použijete existující soubor databáze (MDF) v aplikaci Visual Studio, budete pravděpodobně muset převést soubor do souboru databáze systému SQL Server 2012.Připojíte-li se k existujícímu databázovému souboru, zobrazí se pole se zprávou s žádostí, zda chcete provést upgrade.

Důležitá poznámkaDůležité

Pokud provedete upgrade databázového souboru (MDF), nebude možné ho otevřít v dřívější verzi serveru SQL Server.

Nemusíte převádět databázový soubor (MDF), pokud je Název instance SQL serveru nastaven na hodnotu SQLEXPRESS a je nainstalován SQL Server 2008 Express.Pokud je nainstalována aplikace Visual Studio 2010 je nainstalován SQL Server 2008 Express.Chcete-li změnit název instance pro tento databázový soubor, otevřete Visual Studio, otevřete dialogové okno Přidat připojení, zadejte .\SQLEXPRESS jako název serveru a pak určete název databáze nebo databázového souboru.

SQL Server Express LocalDB a SQL Server Express

Databázový soubor založený na službách (.mdf) lze přidat do jakéhokoli projektu v aplikaci Visual Studio.Návrháře v sadě Visual Studio můžete použít k návrhu tabulek a ostatních databázových objektů, a můžete spouštět dotazy.

Při vytváření databáze založené na službě v sadě Visual Studio se používá modul SQL Server Express LocalDB pro přístup k souboru databáze (MDF), kde dřívější verze aplikace Visual Studio používá modul SQL Server Express.

Databáze SQL Server Express LocalDB je zjednodušenou verzí serveru SQL Server, kterou můžete programovat podobně jako databáze serveru SQL Server.SQL Server Express LocalDB běží v uživatelském režimu a můžete jej nainstalovat rychleji s menším počtem podmínek a bez konfigurace.

[!POZNÁMKA]

Další informace o LocalDB serveru SQL Server Express naleznete v tématech Představení LocalDB, vylepšení SQL Express a LocalDB: Kde je moje databáze? na webu společnosti Microsoft.

V aplikaci Visual Studio můžete použít SQL Server Express ve výchozím nastavení namísto SQL Server Express LocalDB.V panelu nabídky zvolte Nástroje, Možnosti.V uzlu Databázové nástroje zvolte možnost Datová připojení.Do textového pole Název instance serveru SQL zadejte výraz SQLEXPRESS.Alternativně můžete zadat jiné hodnoty pro název instance serveru SQL Server (například SQL2008).

Následující tabulka popisuje rozdíly mezi modely SQL Server Express LocalDB a SQL Server Express.

SQL Server Express LocalDB

SQL Server Express

Typ databáze při vytváření databáze založené na službách

V Visual Studio 2012 a Visual Studio 2013, SQL Server Express LocalDB

V aplikaci Visual Studio 2010 a starší, SQL Server Express

Název instance serveru SQL Server v nabídce Nástroje / Možnosti

(LocalDB)\v11.0

SQLEXPRESS

Hodnota zdroje dat připojovacího řetězce

(LocalDB)\v11.0

.\SQLEXPRESS

Hodnota AttachDbFilename připojovacího řetězce

cesta k souboru

cesta k souboru

Je vyžadována uživatelská instance ("User Instance=True" v připojovacím řetězci)

Ne

Ano

Přípona souboru databáze

.mdf

.mdf

Výhody serveru SQL Server Express LocalDB

  • SQL Server Express LocalDB je kompatibilní s edicemi systému SQL Server na základě služeb pro funkce, které SQL Server Express LocalDB umožňuje.V serveru SQL Server můžete přesunout všechny databáze nebo kód Transact-SQL z SQL Server Express LocalDB na SQL Server nebo SQL Azure bez jakýchkoli kroků upgradu.Proto můžete použít SQL Server Express LocalDB pro vývoj aplikací, které jsou cíleny na všechny edice systému SQL Server.

  • SQL Server Express LocalDB podporuje stejný optimalizátor dotazů a nástroj pro zpracování dotazů jako vyšší edice SQL Serveru.

Každý projekt obsahuje dvě kopie databáze

Při vytváření projektu souboru je možné zkopírovat databázový soubor z kořenové složky projektu do výstupní složky bin.Toto chování závisí na vlastnosti Kopírovat do výstupního adresáře souboru a výchozí hodnota této vlastnosti závisí na typu databázového souboru, který používáte.

Chcete-li zobrazit složku bin v Průzkumníku řešení, zvolte tlačítko Zobrazit všechny soubory na panelu nástrojů.

[!POZNÁMKA]

Vlastnost Kopírovat do výstupního adresáře se nevztahuje na web nebo projekty C++.

Soubor databáze v kořenové složce projektu se změní pouze při úpravách schématu databáze nebo dat pomocí nástrojů Server – Průzkumník/Průzkumník databáze nebo Visual Database Tools.

Při změně dat během vývoje aplikace měníte databázi ve složce bin.Například pokud zvolíte klávesu F5, chcete-li ladit aplikaci, budete připojeni k databázi v dané složce.

Hodnota vlastnosti Kopírovat do výstupní složky

Chování

Kopírovat, pokud je novější (výchozí hodnota pro soubory SDF)

Databázový soubor je zkopírován z adresáře projektu do adresáře bin při prvním sestavení projektu.Vlastnost Datum změny souborů se následně porovnává pokaždé při sestavení projektu.Pokud soubor ve složce projektu je novější, je zkopírován do složky bin, a nahradí předcházející soubor.V opačném případě nebudou zkopírovány žádné zdrojové soubory.

Poznámka k upozorněníUpozornění

Nedoporučujeme tuto hodnotu pro soubory .mdb nebo mdf.Soubor databáze se může změnit i v případě, že se data nemění.Soubor může být označen jako novější, pokud jednoduše otevřete připojení (například rozšíříte uzel Tabulky v rámci Průzkumníka serveru).

Vždy kopírovat (výchozí hodnota pro soubory MDF a MDB)

Databázový soubor je zkopírován z adresáře projektu do adresáře bin při každém sestavení aplikace.Všechny změny provedené v souboru dat ve výstupní složce jsou přepsány při příštím spuštění aplikace.

Nekopírujte

Systém nikdy přepíše soubor v adresáři bin.Aplikace vytvoří dynamický připojovací řetězec, který odkazuje na databázový soubor ve výstupním adresáři.Proto musíte ručně zkopírovat soubor do výstupního adresáře, pokud chcete, aby data ve výstupním adresáři odpovídala datům v adresáři projektu.

Běžné problémy s místními daty

Následující tabulka popisuje běžné problémy, ke kterým může dojít při práci s místními soubory s daty.

Problém

Vysvětlení

Pokaždé, když testuji aplikaci a měním data, mé provedené změny při příštím spuštění aplikace se ztratí.

Hodnota vlastnosti Kopírovat do výstupního adresáře je Kopírovat, pokud je novější nebo Vždy kopírovat.Databáze ve výstupní složce (databáze, která je právě upravována při testování aplikace) je přepsána pokaždé, když sestavíte projekt.Další informace naleznete v tématu Postupy: Správa lokálních datových souborů ve vašem projektu.

Zobrazí se zpráva oznamující, že datový soubor je uzamčen.

Aplikace Access (soubory MDB): Ověřte, zda není soubor otevřen v jiném programu, jako je například Access.

SQL Server Express (soubory MDF): SQL Express uzamkne soubor dat, jestliže se jej pokusíte zkopírovat, přesunout nebo přejmenovat mimo rozhraní IDE sady Visual Studio.

Přístup bude odepřen, pokud se současně více než jeden uživatel pokusí o přístup ke stejné databázi.

Visual Studio využívá výhod instancí uživatele, což je funkce systému SQL Server Express, která vytváří samostatnou instanci serveru SQL Server pro každého uživatele.Jakmile jeden uživatel přistoupí k souboru, žádný další uživatel se nebude moci připojit.K tomuto problému může dojít, pokud se například pokusíte spustit webovou aplikaci na serveru ASP.NET Development Server a Internetovou informační službu (IIS) ve stejnou dobu, protože služba IIS obvykle pracuje s jiným účtem.

Viz také

Úkoly

Návod: Připojování k datům v lokálním databázovém souboru (Windows Forms)

Návod: Připojování k datům v databázi aplikace Access (Windows Forms)