2009-12-30 7 views
0

У меня есть таблица в базе данных на моей рабочей станции (локальной рабочей станции) SQL Server 2008 Express, к которой я добавил некоторые записи. Теперь я хотел бы развернуть эту таблицу на SQL Server 2000 производства, расположенную на сервере. Какое лучшее было для этого? Я хочу сохранить данные из экземпляра разработки. Обе таблицы имеют одинаковую структуру. Могу ли я использовать мастер импорта/экспорта DTS из производственного SQL Server 2000 через SQL Server Enterprise Manager? Переписывает ли таблицы при импорте? Будет ли он обрабатывать разные версии SQL Server?Как обновить таблицу из другого SQL-сервера

+1

Плохая идея для разработки в отношении SQL Server 2008, когда вы собираетесь перейти к 2000-му продукту. Там много изменений синтаксиса. Убедитесь, что база данных, с которой вы работаете, находится в режиме совместимости. – HLGEM

+0

Мы ожидаем скоро поехать в 2008 (скрестив пальцы). Мои вещи настолько просты, что они работают на обоих. Должен ли я искать SQL Server 2000 Express и установить его? Это даже доступно? Что было бы хорошей идеей? – DaveB

ответ

2

В процессе разработки вы должны выполнить скрипты, а не биты в базе данных. There are many advantages in doing so. При развертывании вы запускаете разработанные сценарии в базе данных производств. Теперь, когда вы вытаскиваете кошку из сумки, ваш лучший вариант - использовать экспорт таблицы, а затем импортировать ее, см. FAQ: How do I import/export data with SQL Express. Собственный мастер импорта/экспорта SQL требует SSIS (см. Importing and Exporting Data by Using the SQL Server Import and Export Wizard), который не является частью Express Express.

Если таблица разумная, вы можете использовать распределенный запрос (т. Е. Связанный сервер), но для этого потребуется MSDTC, потому что это будет обновление, и вам может понадобиться его настроить.

+1

Нетрудно создать соответствующий сценарий INSERT из данных в базе данных разработки. – Joe

+0

Спасибо, что поставили меня в правильном направлении. Когда я прочитал ваш ответ, появился свет, как я делал все это неправильно. Мне нужно будет изучить немного T-SQL, но это того стоит. – DaveB

3

Один из способов - создать связанный сервер. Проверьте ссылку msdn Linked server - msdn

Затем вы можете написать один запрос для обновления или любой другой доступ к таблицам на обоих серверах.

+0

Я бы, вероятно, избежал создания связанного сервера между файлом dev и production, по крайней мере, с любым видом записи. Развертывание из одной среды в другую должно выполняться сценарием. – Joe

0

Если у вас есть SqlServer Management Studio (не экспресс). Вы можете использовать параметры импорта и экспорта для быстрой передачи данных. Это предполагает, что вы можете подключиться к базе данных с вашей локальной машины.

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