Почему я не могу создать базу данных с файлом mdf? - PullRequest
1 голос
/ 01 ноября 2011

У меня есть функция в Visual Studio, которую я никогда не понимал.

Я могу «щелкнуть правой кнопкой мыши» по папке App_Data и затем выбрать «База данных сервера Sql».Я действительно не понимаю, как я могу создать БД, используя только файл mdf?Я думал, что служба SQL была ответственна за манипулирование этими файлами?И что вам нужно создать БД с использованием интерфейса «sql management studio»?

Я уверен в том, что мы можем просто получить отдельный файл и запустить из него БД для веб-сайта?

Ответы [ 3 ]

2 голосов
/ 01 ноября 2011

Ваше приложение все еще подключается через службу SQL Server, но оно может указать службе подключаться к определенному файлу mdf во время выполнения через строку подключения. e.g.:

"Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.mdf;Database=dbname; Trusted_Connection=Yes;"
1 голос
/ 01 ноября 2011

Когда вы установили Visual Studio, вы также установили SQL Server Express.Это дает вам возможность создавать и использовать базы данных SQL Server.

Если вы развернете свое приложение, вам также потребуется установить SQL Server (Express) на веб-сервере, который вы использовали (вхотя бы потому, что вы не хотите использовать свой сервер баз данных разработки в рабочей среде).

1 голос
/ 01 ноября 2011

Все базы данных SQL Server представлены в виде одного (или нескольких) файлов .mdf и, как правило, файлов .ldf (ldf - файл журнала, mdf - файл данных.) Файл .mdf - это файл, но он оченьструктурирован и поддерживается SQL Server.SQL Server использует этот файл очень сильно отличается от обслуживания данных CSV, как простой пример.SQL Server разбивает файл на страницы и обслуживает запросы на чтение и запись через эту систему подкачки.Это действительно похоже на файловую систему в файловой системе.Если вы думаете об этом, все это имеет смысл.Данные должны быть сохранены на диск, и это постоянство диска должно быть в форме файла или файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...