Я собираюсь выбить свой волшебный шар на минуту.Давайте посмотрим ...
OP создает базу данных из сценария .sql на локальном сервере?
Ответ смутный, попробуйте еще раз
Включен ли OP.mdb в пакете установки?
Вы можете положиться на него
Хорошо.Таким образом, база данных копируется в этот конкретный каталог пользователем через установочный пакет ...
Повышается ли OP до уровня администратора при запуске установочного пакета?
Outlook исправен
Хорошо, поэтому OP создает каталог и копирует туда файл во время установки, все под эгидой учетной записи администратора.
Присоединяет ли OP этот файл к локальному экземпляру Sql Server?
Знаки указывают на да
На сервере Sql сконфигурирована ли база данных только для чтения?
Ответ смутный, повторите попытку
Имеет OPзапустить ALTER DATABASE DBNC SET READ_ONLY?
Не рассчитывайте на это
Хорошо, тогда OP обновил безопасность NTFS на C:\setup\
и базу данных mdb для предоставления доступа на чтение / записьк учетной записи, на которой запущен Sql Server (NETWORK SERVICE или какая-либо другая учетная запись)?
Мои источники говорят, что нет
Bingo!
Вы создаете этот каталог как администратор и копируете туда файл.У учетной записи, на которой запущен Sql Server, нет прав на изменение файла, поэтому вы получаете эту ошибку.
Не следует развертывать базы данных в виде файлов.Вы должны создать файл .sql, который создает базу данных и все таблицы / отношения / и т.д. внутри нее.Таким образом, вы всегда уверены, что база данных доступна для экземпляра Sql Server.Кроме того, проще создать файл сценария sql, чем mdb.