Я установил SSMS 18. Я установил новый экземпляр LocalDB, выбрав его из установки SQL Server Express 2017 , поскольку он еще не включен в установку SSMS 18.
После установки, когда я пытаюсь создать базу данных с SQL ниже.
CREATE DATABASE Test
Я получаю следующую ошибку:
Msg 5123, Level 16, State 1, Line 1
CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file 'C:\Users\brechtTest.mdf'.
Msg 1802, Level 16, State 4, Line 1
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
Одна вещь, которую я заметил, но не уверен, что она важна, это то, что путь к файлу вообще не имеет смысла. Отсутствует обратная косая черта.
Я поднимаю свойства сервера и пытаюсь добавить обратную косую черту, чтобы решить проблему.
Но тогда эта ошибка поражает меня.
После этого я пытаюсь вызвать града и дать всем разрешения на компьютере \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ MSSQL14E.LOCALDB \ MSSQLServer. Это предотвращает появление ошибки при изменении каталогов в настройках сервера. Но это не решает исходную проблему.
Странно то, что создание базы данных через графический интерфейс (как показано ниже) работает без проблем. Но мне нужно, чтобы CREATE DATABASE работал, потому что я получаю ошибки с миграциями EntityFrameworkCore, использующими эту функциональность.
Как только я разрешаю себе все разрешения для «C: \ Users», я могу создавать базы данных с помощью CREATE DATABASE, поскольку используемый путь к файлу - «C: \ Users \ brechtTest.mdf». Но этот путь к файлу не имеет смысла.
Некоторые вещи, которые я пробовал:
- Переустановка LocalDB.
- Запуск SSMS от имени администратора.
- Настройка службы сервера SQL для использования локального пользователя.
- Измените ключи компьютера \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ MSSQL14E.LOCALDB \ MSSQLServer, чтобы включить обратную косую черту.
Как я могу заставить это работать должным образом, то есть, как я могу настроить путь по умолчанию, чтобы включить обратную косую черту так, чтобы "C: \ Users \ brechtTest.mdf" стал "C: \ Users \ brecht \ Test.mdf"?