2015-09-22 5 views
0

Я импортирую базу данных FoxPro на сервер SQL. Я использовал MS SQL Server FoxPro Import, Export & Преобразование программного обеспечения для преобразования и импорта данных в моем SQL Server. Это удалось, но тип данных каждого столбца изменился на varchar (8000). Есть ли лучший способ импортировать базу данных FoxPro на SQL-сервер и сохранить тип данных импортированных данных?Как преобразовать данные FoxPro в SQL Server и сохранить тип данных правильно?

+0

Что должно быть тип данных? Является ли varchar (8000) слишком большим или недостаточно большим? А какая версия SQL Server? – Vinnie

+0

Проблема заключается в том, что он изменяет все типы данных на varchar. например он изменяет '22/092015 'даты в foxpro на '22/9/2015' varchar в sql-сервере. Я использую SQL Server 2012. – user1235004

+0

Используйте мастер [Sql Server upsizing wizard] (https://vfpx.codeplex.com/wikipage?title=Sedna&referringTitle=Home#SQLServerUpsizing). Это правильно преобразует столбцы, см. Http://www.codemag.com/article/0703052 – stuartd

ответ

0

Я не нашел прямого решения проблемы. Вот моя работа.

  1. Импортировать все данные из foxpro в sql-сервер.
  2. Создать еще один набор таблиц (с новыми именами)
  3. Копирование и отбрасывать данные из старых таблиц в новые таблицы, что-то вроде: INSERT INTO SELECT CAST (Col в качестве полезного типа данных) ИЗ
+0

Другое обходное решение: сначала импортируйте базу данных из foxpro в MS Access, а затем импортируйте из MS Access на SQL-сервер. – user1235004

0

Вы также можете попробовать DBF Commander Pro 's Export to DBMS. Он преобразует тип поля во время процесса экспорта. Выберите «Создать новую таблицу» элемент в виде таблицы назначения:

export dbf to database