Эта организация хранит данные в разных местах, включая базы данных MySQL 5 и SQLServer 2000 (версия для разработчиков) на Win2k Server. Для данных в MySQL я использовал PHPMyAdmin, mysqldump и т. Д., Чтобы получить данные и преобразовать их. Я также написал простой код Ruby Rails для работы с данными MySQL и использовал SQLYog (pro) для передачи данных из SQLServer 2000 в MySQL 5. Теперь мне нужно получить некоторые данные из баз данных SQL Server 2000, и я бы хотел чтобы сделать это без написания кода (или внесения изменений в кодовую базу устаревшего приложения ColdFusion). Это не кажется необоснованным ...
Анализатор запросов SQL Server, вероятно, может каким-то образом сохранить вывод запроса. Я почти уверен, что мог бы использовать консоль SQL Server и передать его в файл в консоли, а затем преобразовать его. Какой инструмент лучше? Есть ли такой инструмент, как PHPMyAdmin для SQLServer 2000 или какой-либо другой быстрый способ получить CSV из SQLServer 2000 с небольшим количеством кода или без него?
Спасибо,
Адрик
SQL Server 2000 поставлялся с Услуги преобразования данных (DTS)1 который позволяет перемещать данные из одной базы данных в другую,2 потенциально включая преобразования.
Это предназначено для перемещения больших объемов данных, в отличие от Query Analyzer.
1 Заменено службами интеграции SQL Server (SSIS) в более новых версиях.
2 Или что-нибудь с драйвером ADO. Раньше я использовал его для переноса данных из файлов Excel.
В SQL Server 2000 вы найдете скрытый инструмент для mysqldump. Утилита BCP Вы можете экспортировать таблицы из базы данных в CSV без написания кода, хотя для этого потребуются хотя бы некоторые командные файлы.
например.
BCP northwind.dbo.customers out c:\customers.txt -c -t, -T –S<servername>
Если вы хотите передавать вывод запросов по конвейеру, то вызывается версия анализатора запросов для командной строки. osql. Вы можете запустить это из командной строки и делать такие вещи, как вывод канала или указать выходной файл.
IMHO наименее болезненный способ получить данные sql-сервера в mysql - использовать связанные серверы. Я ответил аналогичный вопрос о получении данных mysql на сервере sql, но можно применить тот же метод. Это, конечно, потребует написания большего количества кода.
Существует, как упоминалось ранее, опция DTS, или я считаю, что более простое ее воплощение с графическим интерфейсом через щелчок правой кнопкой мыши и экспорт. Вы можете сделать это в Excel, CSV или других форматах файлов, но я считаю, что вам нужно будет воссоздать структуру таблицы вручную. Одним из инструментов, который я использовал раньше для миграции баз данных SQL Server (а также структуры), был SQL diff программного обеспечения Apex, что касается перехода на другую платформу, ну, я не знаю точно, как это будет работать, он может быть достаточно умен, чтобы "сделать что ты имеешь в виду"