sp_attach_single_file_db (Transact-SQL)
Изменения: 5 декабря 2005 г.
Присоединяет базу данных, которая имеет только один файл данных, к текущему серверу. Процедура sp_attach_single_file_db не может использоваться с множеством файлов данных.
Важно! |
---|
В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется. Вместо этого рекомендуется использовать инструкцию CREATE DATABASE database_name FOR ATTACH. Дополнительные сведения см. в разделе CREATE DATABASE (Transact-SQL). Не используйте эту процедуру на реплицированной базе данных. |
Примечание безопасности. |
---|
Рекомендуется не присоединять и не восстанавливать базы данных, полученные из неизвестных или ненадежных источников. В этих базах данных может содержаться вредоносный код, вызывающий выполнение непредусмотренных инструкций Transact-SQL или появление ошибок путем изменения схемы или физической структуры базы данных. Перед тем как использовать базу данных, полученную из ненадежного источника, выполните инструкцию DBCC CHECKDB на этой базе данных на непроизводственном сервере, а также изучите исходный код в базе данных, например хранимые процедуры и другой пользовательский код. |
Синтаксические обозначения в Transact-SQL
Синтаксис
sp_attach_single_file_db [ @dbname= ] 'dbname'
, [ @physname= ] 'physical_name'
Аргументы
- [ @dbname= ] 'dbname'
Имя базы данных для присоединения к серверу. Имя должно быть уникальным. Аргумент dbname имеет тип sysname и значение по умолчанию NULL.
[ @physname= ] 'physical_name'
Физическое имя, включая путь файла базы данных. Аргумент physical_name имеет тип nvarchar(260) и значение по умолчанию NULL.Примечание. Этот аргумент сопоставляется параметру FILENAME инструкции CREATE DATABASE. Дополнительные сведения см. в разделе CREATE DATABASE (Transact-SQL). В компоненте Microsoft SQL Server 2005 Database Engine любые полнотекстовые файлы, являющиеся частью присоединяемой базы данных, будут присоединены вместе с ней. Чтобы указать новый путь к полнотекстовому каталогу, можно указать файл каталога, указав имя папки без имени файла. Дополнительные сведения см. в разделе Присоединение и отсоединение полнотекстовых каталогов.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Результирующие наборы
Нет
Замечания
Используйте процедуру sp_attach_single_file_db только на базах данных, которые были предварительно отсоединены от сервера с помощью операции sp_detach_db или на скопированных базах данных.
Процедура sp_attach_single_file_db работает только на базах данных, которые имеют один файл журнала. Когда процедура sp_attach_single_file_db прикрепляет базу данных к серверу, операция создает новый файл журнала. Если база данных находится в режиме «только для чтения», файл журнала будет создан в ее предыдущем местоположении.
Примечание. |
---|
Невозможно отсоединить или присоединить моментальный снимок базы данных. |
Не используйте эту процедуру на реплицированной базе данных.
Разрешения
Дополнительные сведения о том, как будут обработаны разрешения, когда присоединяется база данных, см. в разделе CREATE DATABASE (Transact-SQL).
Примеры
Следующий пример отсоединяет AdventureWorks
и затем присоединяет один файл из AdventureWorks
к текущему серверу.
USE master;
GO
EXEC sp_detach_db @dbname = 'AdventureWorks';
EXEC sp_attach_single_file_db @dbname = 'AdventureWorks',
@physname = N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf';
См. также
Справочник
sp_detach_db (Transact-SQL)
sp_helpfile (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)
Другие ресурсы
Присоединение и отсоединение баз данных
Присоединение и отсоединение полнотекстовых каталогов
Защита данных и файлов журналов
Справка и поддержка
Получение помощи по SQL Server 2005
Журнал изменений
Версия | Журнал |
---|---|
5 декабря 2005 г. |
|