2010-05-31 2 views
3

Я недавно достиг стадии, на которой разрабатывается приложение ASP.net MVC, которое готово к развертыванию на производственном сервере. Я разработал, как опубликовать приложение - у меня есть все файлы на сервере и вы можете получить доступ к ним через Интернет.Развертывание приложения ASP.Net MVC

Однако я не могу решить, как развернуть мою базу данных. На сервере установлен SQL Server Management Studio Express, поскольку база данных - это база данных SQL Server Express. У меня есть экземпляр сервера и работает - я просто не знаю, как добавить таблицы и т. Д. В базу данных.

Я создал сценарии «CREATE TABLE» на машине разработки, но, насколько я вижу, Management Studio не предоставляет никакого способа фактически запускать эти сценарии. Я просмотрел все пункты меню, которые я мог видеть, и никто из них не работал. Даже использование опции «Создать новый запрос ...» и вставка скрипта в нее не работали.

Когда я пытаюсь «Файл-> Открыть ...» и выберите сценарий для запуска, установите правильную базу данных из выпадающего списка на панели инструментов, а затем выполните сценарий, он жалуется на то, что не обнаружил файл базы данных (., даже когда я установил USE [...] заявление на правильный путь

Удаления USE [...] заявления, скрипт жалуется, что не может найти [dbo].[Invoices] объект, однако, он не должен быть в состоянии найти его, потому, что его пытаясь его создать!

tl; dr: Какой лучший способ чтобы база данных на производственной машине соответствовала базе данных на моей машине разработки?

EDIT: Один из сценариев находится в режиме онлайн here. Выход (после удаления первых двух строк) равен here.

+0

Можете ли вы показать нам строки сценария, где он пытается создать таблицу '[dbo]. [Invoices]' (и откуда, по-видимому, исходит ошибка)? –

+0

@ кодека - сделано. –

ответ

2

В SQL Server 2008 был добавлен тип данных DATE. Предположительно, на вашем производственном сервере работает только SQL Server 2005, и именно поэтому вы получаете «Столбец, параметр или переменная №2: не можете найти дату типа данных». ошибка.

Вам необходимо изменить свой тип данных на DATETIME (который поддерживается SQL Server 2005).

+0

Второе это. Сценарий терпит неудачу, потому что он не может создать таблицу ..., которая объясняет остальную часть ошибок, которые получает a_mod. – Tommy

+0

Спасибо, ты прав. Это (наряду с повторным запуском всех других скриптов, чтобы разрешить зависимости) работало хорошо. –

0

Вы имеете в виду схему или все данные? Если все данные, я бы сделал резервную копию на своем dev macine, а затем восстановил на вашей производственной машине. Кроме того, такие ошибки, как вы упоминаете, заставляют меня задаться вопросом, правильны ли ваши сценарии. Просматривали ли вы их, чтобы создать правильный тип скрипта? Вы создавали скрипт для всех таблиц и объектов?

Смежные вопросы