Udostępnij za pośrednictwem


Dane lokalne — Przegląd

Kiedy używasz danych lokalnych, łączysz swoją aplikację z plikiem bazy danych na komputerze lokalnym, a nie w bazie danych na oddzielnym serwerze.Na przykład można połączyć aplikację, którą opracowywano w programie Visual Studio, z następującymi plikami lokalnej bazy danych:

  • Pliki bazy danych programu SQL Server Express LocalDB (.mdf)

  • Pliki bazy danych programu SQL Server Express (.mdf)

  • Pliki baz danych programu Microsoft Access (.mdb)

Poniższa tabela zawiera łącza do tematów opisujących sposób łączenia aplikacji z danymi lokalnymi:

Temat

Opis

Wskazówki: tworzenie lokalnego pliku bazy danych w programie Visual Studio

Zawiera instrukcje krok po kroku dotyczące tworzenia pliku lokalnej bazy danych, który służy do testowania funkcji danych i kompilowania aplikacji.

Wskazówki: łączenie z danymi w pliku lokalnej bazy danych (formularze systemu Windows)

Zawiera instrukcje krok po kroku do łączenia się z bazą danych programu SQL Server Express LocalDB podczas tworzenia prostej aplikacji systemu Windows.

Wskazówki: łączenie z danymi w bazie danych programu Access (formularze systemu Windows)

Zawiera instrukcje krok po kroku do łączenia z bazą danych programu Microsoft Access.

Porady: połączenie z bazą danych Northwind

Przedstawiono instrukcje dotyczące łączenia z przykładową bazą danych Northwind w programach SQL Server, SQL Server Compact, SQL Server Express i Access.

Po utworzeniu źródła danych i skonfigurowaniu go w celu uzyskiwania dostępu do pliku danych lokalnych, można pracować z danymi za pomocą tej samej technologii i obiektów, których można było używać do pracy z danymi z innych źródeł.Aby uzyskać więcej informacji, zobacz Tworzenie aplikacji danych.

Integrowanie bazy danych z aplikacją

Jeśli łączysz się do danych lokalnych, można nie tylko połączyć się z plikiem bazy danych, ale również zintegrować go z aplikacją.Na przykład można otworzyć menu Projekt, przejdź do istniejącego pliku sdf, .mdf lub mdb i dodać go do swojego projektu.

Jeśli dodasz lokalne pliki danych, utwórz typizowany zestaw danych i parametry połączenia dynamicznego, które wskazują plik bazy danych w aplikacji.Po dodaniu pliku bazy danych do projektu, użyj Kreatora konfiguracji źródła danych, aby określić obiekty, które należy dołączyć.

[!UWAGA]

Możesz automatycznie skonfigurować połączenie i uruchomić Kreator konfiguracji źródła danych przeciągając plik sdf, .mdf lub .mdb z Eksploratora plików do Solution Explorer.Następnie możesz określić obiekty do użycia w aplikacji.

Jeśli używasz Kreatora konfiguracji źródła danych, aby utworzyć źródło danych dla lokalnego pliku danych, zostanie wyświetlony monit o dołączenie pliku do projektu.Jeśli go nie podasz, aplikacja będzie zawierać tylko parametry połączenia, na które wskazuje ustalona ścieżka, a nie rzeczywisty plik danych.Aby uzyskać więcej informacji, zobacz Porady: zarządzanie plikami danych lokalnych w projekcie.

Po zakończeniu pracy kreatora plik bazy danych i zestaw danych pojawiają się w oknie Eksplorator rozwiązań/Eksplorator bazy danych, a określone obiekty bazy danych pojawią się w oknie Źródła danych.Przeciągając elementy z okna Źródła danych na formularz, można tworzyć formanty, które są powiązane z danymi bazowymi.Aby otworzyć okno Źródła danych, otwórz menu Dane, a następnie wybierz Pokaż źródła danych.Aby uzyskać więcej informacji, zobacz Powiązywanie kontrolek z danymi w Visual Studio.

Używanie pliku bazy danych

Przed użyciem istniejącego pliku bazy danych (.mdf) w programie Visual Studio prawdopodobnie należy przekonwertować plik do pliku bazy danych programu SQL Server 2012.W czasie, gdy łączysz się z plikiem istniejącej bazy danych, okno komunikatu pyta, czy chcesz przeprowadzić aktualizację.

Ważna uwagaWażne

W przypadku uaktualniania pliku bazy danych (.mdf) nie może otworzyć go w starszej wersji programu SQL Server.

Nie musisz konwertować pliku bazy danych (.mdf) jeśli Nazwa wystąpienia SQL Server jest ustawiona na SQLEXPRESS i zainstalowany jest SQL Server 2008 Express.SQL Server 2008 Express jest zainstalowany, jeśli jest zainstalowany program Visual Studio 2010.Aby zmienić nazwę wystąpienia dla tego pliku bazy danych, otwórz program Visual Studio, otwórz okno dialogowe Dodaj połączenie, określ .\SQLEXPRESS jako nazwę serwera, a następnie określ bazę danych lub nazwę pliku bazy danych.

SQL Server Express LocalDB i SQL Server Express

Możesz dodać plik bazy danych oparty na usługach (.mdf) do dowolnego projektu w programie Visual Studio.Możesz użyć projektantów w Visual Studio do projektowania tabel i innych obiektów baz danych, i możesz uruchamiać zapytania.

Gdy utworzysz bazę danych opartą na usługach w programie Visual Studio, używa ona aparatu SQL Server Express LocalDB, aby uzyskiwać dostęp do pliku bazy danych (.mdf), podczas gdy starsze wersje programu Visual Studio używały aparatu SQL Server Express.

SQL Server Express LocalDB jest uproszczoną wersją programu SQL Server, która umożliwia programowanie w większości w ten sam sposób co dla bazy danych SQL Server.SQL Server Express LocalDB działa w trybie użytkownika. Możesz ten program zainstalować znacznie szybciej z mniejszą liczbą wymagań wstępnych i bez konfiguracji.

[!UWAGA]

Aby uzyskać więcej informacji na temat programu SQL Server Express LocalDB, zobacz Wprowadzenie do LocalDB, ulepszonej wersji SQL Express i LocalDB: Gdzie jest moja bazy danych? w witrynie sieci Web firmy Microsoft.

W programie Visual Studio można użyć domyślnie programu SQL Server Express zamiast programu SQL Server Express LocalDB.W pasku menu wybierz Narzędzia, Opcje.W węźle Narzędzia bazy danych wybierz Połączenia danych.W polu tekstowym Nazwa wystąpienia serwera programu SQL Server wprowadź SQLEXPRESS.Alternatywnie można wprowadzić inne wartości dla nazwy wystąpienia programu SQL Server (na przykład SQL2008).

Poniższa tabela opisuje różnice między aparatami SQL Server Express LocalDB i SQL Server Express.

SQL Server Express LocalDB

SQL Server Express

Typ bazy danych podczas tworzenia bazy danych opartej o usługi

W programach Visual Studio 2012 i Visual Studio 2013 — SQL Server Express LocalDB

W programie Visual Studio 2010 i starszych, SQL Server Express

Nazwa wystąpienia programu SQL Server w oknie Narzędzia/Opcje

(LocalDB)\v11.0

SQLEXPRESS

Wartość źródła danych w ciągu połączenia

(LocalDB)\v11.0

.\SQLEXPRESS

Wartość AttachDbFilename w ciągu połączenia

ścieżka pliku

ścieżka pliku

Wymagane jest wystąpienie użytkownika ("wystąpienie użytkownika = True" w ciągu połączenia)

Nie

Tak

Rozszerzenie pliku bazy danych

.mdf

.mdf

Zalety programu SQL Server Express LocalDB

  • SQL Server Express LocalDB jest zgodny z wersjami programu SQL Server opartymi na usługach w przypadku funkcji, które umożliwia SQL Server Express LocalDB.W programie SQL Server można przenieść bazę danych lub kod języka Transact-SQL z SQL Server Express LocalDB do programu SQL Server lub SQL Azure bez konieczności uaktualnień.W związku z tym możesz użyć SQL Server Express LocalDB do tworzenia aplikacji, które działają we wszystkich wersjach SQL Server.

  • SQL Server Express LocalDB obsługuje taki sam optymalizator kwerend i procesor kwerend, jak wyższe wersje programu SQL Server.

Każdy projekt zawiera dwie kopie bazy danych

Podczas tworzenia projektu plik bazy danych może zostać skopiowany z głównego folderu projektu do folderu danych wyjściowych, bin,.To zachowanie zależy od właściwości Kopiuj do katalogu wyjściowego pliku, a wartość domyślna tej właściwości zależy od typu pliku bazy danych, której używasz.

Aby wyświetlić folder bin w Solution Explorer, wybierz przycisk Pokaż wszystkie pliki na pasku narzędzi.

[!UWAGA]

Właściwość Kopiuj do katalogu wyjściowego nie ma zastosowania do projektów sieci Web lub C++.

Plik bazy danych w folderze głównym projektu zostanie zmieniony tylko wtedy, gdy edytujesz schemat bazy danych lub dane za pomocą Server Explorer/Database Explorer lub innych Narzędzia graficzne bazy danych.

W przypadku zmiany danych podczas tworzenia aplikacji zmieniasz też bazę danych w folderze bin.Na przykład po wybraniu klawisza F5 w celu debugowania aplikacji łączysz się z bazą danych w tym folderze.

Wartość właściwości Kopiuj do katalogu wyjściowego

Zachowanie

Kopiuj, jeśli nowszy (wartość domyślna dla plików .sdf)

Plik bazy danych jest kopiowany z katalogu projektu do katalogu bin po raz pierwszy, gdy kompilujesz projekt.Właściwość Data modyfikacji dla plików jest porównywana podczas każdego ponownego kompilowania projektu.Jeśli plik w folderze projektu jest nowszy, jest kopiowany do folderu bin, zastępując poprzedni plik.W przeciwnym razie żadne pliki nie są kopiowane.

Informacje dotyczące przestrogiPrzestroga

Nie zalecamy użycia tej wartości dla plików .mdb lub .mdf.Plik bazy danych można zmienić, nawet jeśli dane nie ulegają zmianom.Plik może być oznaczony jako nowszy, jeśli po prostu otwierasz połączenie (na przykład rozwiń węzeł Tabele w Server Explorer).

Zawsze kopiuj (wartość domyślna dla plików .mdf i .mdb)

Plik bazy danych jest kopiowany z katalogu projektu do katalogu bin za każdym razem, gdy kompilujesz aplikację.Wszelkie zmiany dokonane w pliku danych w folderze wyjściowym są zastępowane przy następnym uruchomieniu aplikacji.

Nie kopiuj

System nigdy nie zastępuje pliku w katalogu bin.Twoja aplikacja tworzy ciąg połączenia dynamicznego, który wskazuje plik bazy danych w katalogu wyjściowym.W związku z tym musisz ręcznie skopiować ten plik do katalogu wyjściowego, jeśli chcesz, aby dane w katalogu wyjściowym pasowały do danych w katalogu projektu.

Typowe problemy z danymi lokalnymi

Poniższa tabela opisuje typowe problemy, które można napotkać podczas pracy z lokalnymi plikami danych.

Problem

Wyjaśnienie

Za każdym razem, gdy testuję moją aplikację i modyfikuję dane, moje zmiany są usuwane przy następnym uruchomieniu mojej aplikacji.

Wartość właściwości Kopiuj do katalogu wyjściowego to Kopiuj jeśli nowszy lub Zawsze Kopiuj.Bazy danych w folderze danych wyjściowych (bazy danych, która jest modyfikowana podczas testowania aplikacji) jest zastępowany podczas każdego kompilowania projektu.Aby uzyskać więcej informacji, zobacz Porady: zarządzanie plikami danych lokalnych w projekcie.

Pojawi się komunikat informujący, że plik danych jest zablokowany.

Access (pliki .mdb): Sprawdź, czy plik nie jest otwarty w innym programie, takim jak Access.

SQL Server Express (pliki .mdf): SQL Express blokuje plik danych, jeśli użytkownik próbuje skopiować, przenieść lub zmienić jego nazwę na zewnątrz programu Visual Studio IDE.

Odmowa dostępu, gdy więcej niż jeden użytkownik próbuje uzyskać dostęp do tej samej bazy danych w tym samym czasie.

Program Visual Studio korzysta z wystąpień użytkownika, które są funkcją programu SQL Server Express, który tworzy osobne wystąpienia programu SQL Server dla każdego użytkownika.Po tym, gdy jeden użytkownik uzyska dostęp do pliku, nie mogą połączyć się kolejni użytkownicy.Ten problem może wystąpić, jeśli na przykład w tym samym czasie zostanie podjęta próba uruchomienia aplikacji sieci Web w ASP.NET Development Server i Internet Information Services (IIS), ponieważ program IIS jest zazwyczaj uruchamiany przy użyciu innego konta.

Zobacz też

Zadania

Wskazówki: łączenie z danymi w pliku lokalnej bazy danych (formularze systemu Windows)

Wskazówki: łączenie z danymi w bazie danych programu Access (formularze systemu Windows)