Megosztás a következőn keresztül:


sp_attach_single_file_db (Transact-SQL)

A következőkre vonatkozik:SQL Server

Egy adatbázist csatol, amely csak egy adatfájlból áll a jelenlegi szerverhez. sp_attach_single_file_db Nem használható több adatfájllal.

Fontos

Ez a funkció az SQL Server egy későbbi verziójában lesz eltávolítva. Ne használja ezt a funkciót az új fejlesztési munkában, és tervezze meg a funkciót jelenleg használó alkalmazások módosítását. Javasoljuk, hogy inkább használd CREATE DATABASE <database_name> FOR ATTACH . További információ: CREATE DATABASE. Ne használd ezt az eljárást egy replikált adatbázison.

Ne csatolj vagy állíts vissza ismeretlen vagy megbízhatatlan forrásokból származó adatbázisokat. Az ilyen adatbázisok rosszindulatú kódot tartalmazhatnak, amelyek nem szándékos Transact-SQL kódot hajthatnak végre, vagy hibákat okozhatnak a séma vagy a fizikai adatbázis szerkezetének módosításával. Mielőtt ismeretlen vagy nem megbízható forrásból származó adatbázist használna, futtassa DBCC CHECKDB az adatbázison egy nem gyártási kiszolgálón, és vizsgálja meg a kódot, például a tárolt eljárásokat vagy más felhasználó által definiált kódot az adatbázisban.

Transact-SQL szintaxis konvenciók

Szemantika

sp_attach_single_file_db
    [ @dbname = ] N'dbname'
    , [ @physname = ] N'physname'
[ ; ]

Arguments

[ @dbname = ] N'dbname'

Az adatbázis neve, amelyet a szerverhez kell csatolni. @dbnamea sysname, alapértelmezett nélkül.

[ @physname = ] N'physname'

Az adatbázis fájl fizikai neve, beleértve az útot is. @physnamenvarchar(260), alapértelmezett nélkül.

Ez az érv az FILENAME állítás paraméterére CREATE DATABASE leképezhető. További információ: CREATE DATABASE.

Megjegyzés:

Ha egy SQL Server 2005 (9.x) adatbázist, amely teljes szövegű katalógusfájlokat tartalmaz, egy újabb SQL Server szerverpéldányhoz csatolsz, a katalógusfájlok a korábbi helyükről kerülnek csatolásra a többi adatbázisfájllal együtt, ugyanúgy, mint az SQL Server 2005 (9.x) verzióban. További információért lásd: Frissítés Full-Text keresés.

Kódértékek visszaadása

0 (sikeres) vagy 1 (hiba).

Eredményhalmaz

Nincs.

Megjegyzések

Csak olyan adatbázisokon használják sp_attach_single_file_db , amelyeket korábban explicit sp_detach_db művelettel vagy másolt adatbázisokon távolítottak el a szervertől.

sp_attach_single_file_db csak olyan adatbázisokon működik, amelyeknek egyetlen naplófájlja van. Amikor sp_attach_single_file_db az adatbázist a szerverhez csatolja, új naplófájlt épít fel. Ha az adatbázis csak olvasható, akkor a naplófájl az előző helyén van építve.

Megjegyzés:

Egy adatbázis-pillanatképet nem lehet leválasztani vagy csatolni.

Ne használd ezt az eljárást egy replikált adatbázison.

Permissions

Az adatbázis csatolásakor a jogosultságok kezeléséről információért lásd a ADATBÁZIS LÉTREHOZÁSÁT.

Példák

A következő példa egy fájlt AdventureWorks2025 leválasztAdventureWorks2025, majd csatol a jelenlegi szerverhez.

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';