Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Dołącza bazę danych, która jest tylko jednym plikiem danych, do aktualnego serwera.
sp_attach_single_file_db Nie można go używać z wieloma plikami danych.
Ważne
Ta funkcja zostanie usunięta w przyszłej wersji programu SQL Server. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji. Zalecamy użycie CREATE DATABASE <database_name> FOR ATTACH zamiast tego. Aby uzyskać więcej informacji, zobacz CREATE DATABASE (TWORZENIE BAZY DANYCH). Nie stosuj tej procedury w zreplikowanej bazie danych.
Nie przyłączaj ani nie przywracaj baz danych z nieznanych lub niezaufanych źródeł. Takie bazy danych mogą zawierać złośliwy kod, który może wykonywać niezamierzony kod Transact-SQL lub powodować błędy, modyfikując schemat lub fizyczną strukturę bazy danych. Przed użyciem bazy danych z nieznanego lub niezaufanego źródła uruchom DBCC CHECKDB w bazie danych na serwerze nieprodukcyjnym, a także sprawdź kod, taki jak procedury składowane lub inny kod zdefiniowany przez użytkownika, w bazie danych.
Transact-SQL konwencje składni
Składnia
sp_attach_single_file_db
[ @dbname = ] N'dbname'
, [ @physname = ] N'physname'
[ ; ]
Arguments
[ @dbname = ] N'dbname'
Nazwa bazy danych, która ma być przypisana do serwera. @dbname to sysname, bez domyślnego ustawienia.
[ @physname = ] N'physname'
Fizyczna nazwa, w tym ścieżka, pliku bazy danych. @physname to nvarchar(260), bez domyślnego stanowczego.
Ten argument odwzorowuje się na FILENAME parametr zdania CREATE DATABASE . Aby uzyskać więcej informacji, zobacz CREATE DATABASE (TWORZENIE BAZY DANYCH).
Uwaga / Notatka
Gdy dołączasz bazę danych SQL Server 2005 (9.x) zawierającą pełnotekstowe pliki katalogowe do nowszej instancji serwera SQL Server, pliki katalogowe są dołączane z ich poprzedniej lokalizacji wraz z innymi plikami bazy danych, tak jak w SQL Server 2005 (9.x). Więcej informacji znajdziesz w sekcji Ulepsz Full-Text Wyszukiwanie.
Zwracanie wartości kodu
0 (powodzenie) lub 1 (niepowodzenie).
Zestaw wyników
Żaden.
Uwagi
Używaj sp_attach_single_file_db tylko w bazach danych, które wcześniej zostały odłączone od serwera za pomocą operacji jawnej sp_detach_db lub na skopiowanych bazach danych.
sp_attach_single_file_db Działa tylko na bazach danych, które mają pojedynczy plik loga. Po sp_attach_single_file_db dołączeniu bazy danych do serwera, tworzy nowy plik loga. Jeśli baza danych jest tylko do odczytu, plik loga jest budowany w poprzedniej lokalizacji.
Uwaga / Notatka
Migawki bazy danych nie można odłączyć ani dołączyć.
Nie stosuj tej procedury w zreplikowanej bazie danych.
Permissions
Aby uzyskać informacje o tym, jak uprawnienia są obsługiwane przy dołączaniu bazy danych, zobacz CREATE DATABASE.
Przykłady
Poniższy przykład odłącza AdventureWorks2025 i następnie dołącza jeden plik z AdventureWorks2025 bieżącego serwera.
USE master;
GO
EXECUTE sp_detach_db @dbname = 'AdventureWorks2022';
EXECUTE sp_attach_single_file_db
@dbname = 'AdventureWorks2022',
@physname = N'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data\AdventureWorks2022_Data.mdf';