Я подключаюсь к своей базе данных через следующую строку подключения:
Код: Выделить всё
"Server=(localdb)\MSSQLLocalDB; Database=Production; Integrated Security=True;"
И я обнаружил, что база данных сохраняется в виде двух файлов: C:\Users\[username]\Production.mdf и Production_log.ldf.
p>
Допустим, эти два файла потеряны. Итак, я хочу снова создать эту базу данных, а затем импортировать базу данных из другого mdf-файла. Я запускаю свой проект на C#, и при этом
Код: Выделить всё
using (ProductionContext db = new ProductionContext())
{
db.Database.EnsureDeleted();
db.Database.EnsureCreated();
}
База данных «Производство» уже существует . Выберите другое имя базы данных
Кроме того, похоже, что mdf- и ldf-файлы базы данных все еще находятся внутри
Код: Выделить всё
C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\DATA
Я пытался удалить mdf- и ldf-файлы в папке Program Files, но это не помогло. Я пытался остановить, удалить и создать экземпляр LocalDB через командную строку (остановка sqllocaldb, удаление sqllocaldb, создание sqllocaldb), но это тоже не помогло. Я также просмотрел системные представления базы данных (например, sys.sysfiles), чтобы найти файлы базы данных, но это не дало мне никакой дополнительной информации.
У меня также были проблемы с перемещением, импортом и экспортом база данных localdb.
Причина, по которой я задаю этот вопрос, заключается в том, что я ожидаю, что мои клиенты обязательно будут перемещать базы данных из одного места в другое в пределах одного ПК и между ПК. Я также хочу предоставить хорошую систему резервного копирования. Итак, мне нужно уметь выполнять простые CRUD-действия и иметь полный контроль над файлами базы данных.
Подробнее здесь: https://stackoverflow.com/questions/786 ... -databases