Chcę utworzyć skrypt SQL, który tworzy bazę danych. Teraz, mam to:TWORZENIE BAZY DANYCH przy użyciu pliku w domyślnej ścieżce
CREATE DATABASE [Documents] ON PRIMARY
(NAME = N'Documents', FILENAME = N'Documents.mdf')
LOG ON
(NAME = N'Documents_log', FILENAME = N'Documents_log.ldf')
COLLATE SQL_Latin1_General_CP1_CI_AS
Jednak ta generuje następujący błąd:
Msg 5105, Level 16, State 2, Line 2
A file activation error occurred. The physical file name 'Documents.mdf' may be incorrect. Diagnose and correct additional errors, and retry the operation.
Msg 1802, Level 16, State 1, Line 2
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
wiem, że problemem jest to, że nie określił pełną ścieżkę do nazw plików. Ale chcę móc uruchomić ten skrypt niezależnie od struktury katalogów serwera bazy danych. Czy jest jakiś sposób na użycie domyślnej ścieżki?
To prawda, ale co, jeśli muszę określić dodatkowe atrybuty, takie jak SIZE i FILEGROWTH? Widziałem rozwiązania przy użyciu XP, aby odczytać rejestr, ale co, jeśli nie działa na domyślnej instancji? Ten klucz/wartość rejestru nie dałby prawidłowej odpowiedzi. Ciągle szukam, więc nie uważam tego za odpowiedź sam. –
po utworzeniu bazy danych dodaj skrypt alter bazy danych, aby określić dodatkowe atrybuty, takie jak ROZMIAR i FILEGROWTH. –