Создание и подключение к БД из VS2012
От: virtus  
Дата: 03.06.14 17:27
Оценка:
Всем привет.

Подскажите, пожалуйста,
в VS2012 я увидел несколько способов создать БД, но не понимаю когда какой способ использовать:

1. Я создал БД как Server Explorer->Data connections->Add Connection:

Data source: Microsoft SQL Server (SqlClient)

Server name: (localdb)\v11.0

Select or enter a database name: DB

VS предложила мне создать БД и у меня в Server Explorer появилось новое соединение и бд. Но при этом в проекте бд не появилась.

2. У меня есть проект — ASP.NET MVC 4 Web Application. И в нем есть возможность через Add добавить new Item
c разными вариантами Data: SQL Server Compact 4.0 Local Database и т.д.


И эту базу можно добавить в папку App_Data проекта.

Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

Спасибо.
Re: Создание и подключение к БД из VS2012
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 03.06.14 20:49
Оценка:
Здравствуйте, virtus, Вы писали:

V>Всем привет.

Здоров

V>Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

Ты не с той стороны зашел. Главный вопрос на который надо ответить — куда ты будешь деплоить:
1) Есть там SQL Server или нет
2) Поддерживается webdeploy вместе с базой или нет
3) Если web deploy не поддерживается, то как будет деплоиться база?

Самый простой для тебя вариант — воспользоваться Entity Framework 6+ с Migrations, тогда явно базу деплоить не надо будет, только прописать строку подключения.
Даже если в целевой среде нет SQL Server, то можно в несколько кликов заменить на SQLCE.

V>Спасибо.
Re[2]: Создание и подключение к БД из VS2012
От: virtus  
Дата: 03.06.14 21:43
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, virtus, Вы писали:


V>>Всем привет.

G>Здоров

V>>Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

G>Ты не с той стороны зашел. Главный вопрос на который надо ответить — куда ты будешь деплоить:
G>1) Есть там SQL Server или нет
G>2) Поддерживается webdeploy вместе с базой или нет
G>3) Если web deploy не поддерживается, то как будет деплоиться база?

G>Самый простой для тебя вариант — воспользоваться Entity Framework 6+ с Migrations, тогда явно базу деплоить не надо будет, только прописать строку подключения.

G>Даже если в целевой среде нет SQL Server, то можно в несколько кликов заменить на SQLCE.

V>>Спасибо.
Re[2]: Создание и подключение к БД из VS2012
От: virtus  
Дата: 03.06.14 21:48
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, virtus, Вы писали:


V>>Всем привет.

G>Здоров

V>>Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

G>Ты не с той стороны зашел. Главный вопрос на который надо ответить — куда ты будешь деплоить:
G>1) Есть там SQL Server или нет
G>2) Поддерживается webdeploy вместе с базой или нет
G>3) Если web deploy не поддерживается, то как будет деплоиться база?

G>Самый простой для тебя вариант — воспользоваться Entity Framework 6+ с Migrations, тогда явно базу деплоить не надо будет, только прописать строку подключения.

G>Даже если в целевой среде нет SQL Server, то можно в несколько кликов заменить на SQLCE.

V>>Спасибо.


Спасибо.

Это учебное задание, поэтому оно будет запускаться из под студии.
Насколько я понял, студия поддерживается сама что-то наподобие sql server для отладки работ с бд(чтоб реальные бд не разворачивать). Мне б понять для начала в чем разница этих баз, которые в студии создаются по способам описаным выше.
И что значит деплоить базу?
Re[3]: Создание и подключение к БД из VS2012
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 04.06.14 11:30
Оценка:
Здравствуйте, virtus, Вы писали:

V>Здравствуйте, gandjustas, Вы писали:


G>>Здравствуйте, virtus, Вы писали:


V>>>Всем привет.

G>>Здоров

V>>>Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

G>>Ты не с той стороны зашел. Главный вопрос на который надо ответить — куда ты будешь деплоить:
G>>1) Есть там SQL Server или нет
G>>2) Поддерживается webdeploy вместе с базой или нет
G>>3) Если web deploy не поддерживается, то как будет деплоиться база?

G>>Самый простой для тебя вариант — воспользоваться Entity Framework 6+ с Migrations, тогда явно базу деплоить не надо будет, только прописать строку подключения.

G>>Даже если в целевой среде нет SQL Server, то можно в несколько кликов заменить на SQLCE.

V>>>Спасибо.


V>Спасибо.


V>Это учебное задание, поэтому оно будет запускаться из под студии.

V>Насколько я понял, студия поддерживается сама что-то наподобие sql server для отладки работ с бд(чтоб реальные бд не разворачивать). Мне б понять для начала в чем разница этих баз, которые в студии создаются по способам описаным выше.
Это не "что-то наподобие", а полноценный SQL Server Express ставится вместе с Visual Studio в режиме LocalDB.

V>И что значит деплоить базу?

То есть переносить схему и данные с одного сервера на другой.

Все равно лучше воспользоваться Migrations, они автоматом создадут базу в LocalDB.
Re[4]: Создание и подключение к БД из VS2012
От: Аноним  
Дата: 04.06.14 13:05
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, virtus, Вы писали:


V>>Здравствуйте, gandjustas, Вы писали:


G>>>Здравствуйте, virtus, Вы писали:


V>>>>Всем привет.

G>>>Здоров

V>>>>Мне нужно создать простое веб приложение MVC, которое будет читать / писать данные в БД c несколькими таблицами. А потом это приложение нужно будет перенести на другой компьютер и оно должно работать.

G>>>Ты не с той стороны зашел. Главный вопрос на который надо ответить — куда ты будешь деплоить:
G>>>1) Есть там SQL Server или нет
G>>>2) Поддерживается webdeploy вместе с базой или нет
G>>>3) Если web deploy не поддерживается, то как будет деплоиться база?

G>>>Самый простой для тебя вариант — воспользоваться Entity Framework 6+ с Migrations, тогда явно базу деплоить не надо будет, только прописать строку подключения.

G>>>Даже если в целевой среде нет SQL Server, то можно в несколько кликов заменить на SQLCE.

V>>>>Спасибо.


V>>Спасибо.


V>>Это учебное задание, поэтому оно будет запускаться из под студии.

V>>Насколько я понял, студия поддерживается сама что-то наподобие sql server для отладки работ с бд(чтоб реальные бд не разворачивать). Мне б понять для начала в чем разница этих баз, которые в студии создаются по способам описаным выше.
G>Это не "что-то наподобие", а полноценный SQL Server Express ставится вместе с Visual Studio в режиме LocalDB.

V>>И что значит деплоить базу?

G>То есть переносить схему и данные с одного сервера на другой.

G>Все равно лучше воспользоваться Migrations, они автоматом создадут базу в LocalDB.


Спасибо большое.

А Entity Framework 6+ с Migrations — это механизм создания базы прямо из проекта — add new item->data?

Мне нужно быстро разобраться как это написать, может есть где подробный пример для этого механизма?
Сейчас я сделал так:

1. Создал вручную БД через local db.
2. Создал и заполнил вручную таблички в этой бд
3. Создал linq to sql в vs и контекст для моих табличек
4. Через этот контекст и контроллер вывел все во вью.

И теперь я так понимаю перенести это дело на другую машину — не очень удобно, потому что она на сервере и в целовой машине этого сервера может не оказаться?

Для Entity Framework 6+ с Migrations — это будет все в проекте и можно будет перенести? что это за бд будет и как прописать с ней работу/создание/создание заполнение таблиц/чтение запись таблиц / перенос этого на другую машину как будет происходить?

Как это можно все узнать?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.