Udostępnij za pośrednictwem


Xcopy Deployment (SQL Server Express)

Polecenie Xcopy to sposób uproszczonego wdrożyć aplikacji i SQL Server Express bazy danych. Wdrażania XCOPY umożliwia kopiowanie nowej aplikacji (.exe) i pliku bazy danych (.mdf) na inny komputer lub do innej lokalizacji na tym samym komputerze.Dodatkowa konfiguracja nie jest wymagane.

Do dystrybucji aplikacji dla użytkowników, można wysłać tylko pliki .exe i mdf.Każdy użytkownik może zapisać te pliki lokalnie i wystarczy kliknąć dwukrotnie .exe do uruchamiania aplikacji.Jeśli aplikacja używa replikacja, nie należy używać wdrażania XCOPY.

Aby użyć wdrażania XCOPY SQL Server Express musi być zainstalowany na komputerze docelowym i musi być wystąpienie uruchomiony. Aby uzyskać więcej informacji zobaczUser Instances for Non-Administrators.

Jak korzystać z wdrażania XCOPY?

Gdy aplikacja najpierw ustanawia połączenie z uruchomione wystąpienie programu SQL Server Express, SQL Server Express automatycznie wstawi pliku MDF. Gdy użytkownik zamyka aplikację, SQL Server Express odłącza plik .mdf z wystąpienie. Funkcja Xcopy powoduje, że plik .mdf do pełni przenośnych.Można skopiować i przenieść go i, w tym samym czasie uruchomić wiele kopii tego pliku na tym samym wystąpienie.

Logiczne nazw bazy danych

Kiedy SQL Server Express dołącza a bazą danych, automatycznie generuje logiczną nazwę bazy danych, chyba że nazwa logiczna określa ciąg połączenia w aplikacji. This logical name must be unique.SQL Server Express will use the drive letter, directory name, and database file name as the logical name.Na przykład, jeśli plik .mdf jest ścieżka C:\Program Files\My Application\Data\MainData.mdf SQL Server Express przypisze nazwę logiczną bazy danych, który dokładnie pasuje do ścieżki: C:\Program Files\My Application\Data\MainData.mdf.

Uwaga

Jeśli długość pełną ścieżka i nazwę przekracza 127 znaków, nazwy logicznej bazy danych jest skrócone i prefiksem identyfikatora GUID.Gwarantuje to unikatowa nazwa logiczna.

Tworzenie pliku dziennika i nazw

Podczas wdrożyć aplikacji, należy zawrzeć w Xcopy tylko pliki aplikacji i plików .mdf.You should not include the log file (.ldf).SQL Server Express will automatically create a new log file when it attaches the database.SQL Server Express will name the log file database_name_log.ldf.Jeśli plik o tej samej nazwie już istnieje w tym samym katalogu co plik .mdf, używany jest istniejący plik.

Ograniczenia przy użyciu wdrażania XCOPY

Po użyciu wdrażania XCOPY z aplikacją, niektóre SQL Server Express funkcje mogą nie działać zgodnie z oczekiwaniami. Na poniższej liście opisano ograniczenia, które mogą wystąpić.

  • Wszystkie Transact-SQL kod, który zawiera nazwy logicznej bazy danych nie będzie działać.

    Ponieważ logiczną nazwę bazy danych zależy od lokalizacji pliku, który będzie się zmieniać każde polecenie Xcopy, każdy kod, który określa nazwa logiczna bazy danych nie powiedzie się.

  • Scenariusze replikacja nie będą działać.

    Replikacja wymaga nazwy persistent logicznej bazy danych.Jeśli aplikacja używa replikacja, nie należy używać wdrażania XCOPY.

Wdrażania XCOPY dla administratorów SQL Server Express instancji

Aby pracować z funkcji wdrażania XCOPY aplikacji SQL Server Express, należy upewnić się, że ciąg połączenia używany w aplikacji zawiera odpowiednie parametry:

  • Użycie data source parametr, ale zmiana nazwy komputera z kropką (.) lub (lokalny). Należy także określić nazwę wystąpienia, jeśli nie masz pewności, że SQL Server Express zawsze będzie można zainstalować na wystąpienie bez nazwy.

  • Użycie initial catalog lub database parametr, ale nie zestaw parametru na wartość.

  • Add the AttachDBFileName parameter and set it to the name and path of the .mdf file.Attachdbfilename is a SqlClient connection string option that enables attaching databases at runtime and autogenerates database name.The DataDirectory keyword lets you specify the relative path of a database file.Attachdbfilenamealso helps with database portability.Aby uzyskać więcej informacji na temat Attachdbfilename, zobacz temat Visual Studio 2005 dokumentację.

Następujący ciąg połączenia wstawi MyDb.mdf plik bazy danych, która znajduje się w tym samym folderze co plik wykonywalny aplikacji, do SQL Server Express wystąpienie jest uruchomione na komputerze lokalnym.

@"Data Source='.\SQLExpress'; Initial Catalog=; Integrated 
Security=true; AttachDBFileName='" |DataDirectory| + 
@"\MyDb.mdf'"

Wdrażania XCOPY dla innych niż Administratorzy na SQL Server Express instancji

Aby wdrożyć aplikację dla użytkowników, którzy nie mają administracyjnymi praw w wystąpieniu SQL Server Express, należy określić następujące czynności:

  • Parametry w ciąg połączenia, wdrażania XCOPY.

  • The user instance parameter.

Aby uzyskać więcej informacji zobaczUser Instances for Non-Administrators.

See Also

Other Resources