Я знаю, що це не точне рішення вищезазначеного питання, але для мене це був кошмар, коли я намагався скопіювати дані з однієї бази даних, розташованої на окремому сервері, на мій локальний.
Я намагався це зробити, спершу експортувавши дані з Сервера, CSV/txt
а потім імпортувавши їх у свою локальну таблицю.
Обидва рішення: із записом запиту на імпорт CSV
або за допомогою майстра імпорту даних SSMS завжди виникали помилки (помилки були дуже загальними, кажучи, що існує проблема розбору). І хоча я не робив нічого особливого, просто експортувати в CSV
і потім намагається імпорту CSV
в місцевій DB
, помилки завжди були там.
Я намагався подивитися на розділ картографування та попередній перегляд даних, але завжди був великий безлад. І я знаю, що головна проблема полягала в одній із table
колонок, яка містила, JSON
і SQL
аналізатор ставився до цього неправильно.
Тож врешті-решт я придумав інше рішення і хочу поділитися ним у випадку, якщо у когось іншого виникне подібна проблема.
Що я зробив, це те, що я використовував майстра експорту на зовнішньому сервері.
Ось такі кроки, щоб повторити той самий процес:
1) Клацніть правою кнопкою миші на базі даних та виберітьTasks -> Export Data...
2) Коли відкриється майстер, виберіть «Далі» та на місці «Джерело даних:» виберіть «Рідний клієнт SQL Server».
У випадку зовнішнього сервера, швидше за все, вам доведеться вибрати "Використовувати автентифікацію SQL Server" для "Режим автентифікації:".
3) Після натискання кнопки « Далі» ви повинні обрати рішення .
Для цього ще раз виберіть "Рідний клієнт SQL Server".
Цього разу ви можете надати свій локальний (або якийсь інший зовнішній DB
) DB
.
4) Після натискання кнопки Next у вас є два варіанти: скопіювати всю таблицю з однієї DB
в іншу або записати запит, щоб вказати точні дані, які потрібно скопіювати. У моєму випадку мені не потрібна була вся таблиця (вона була занадто великою), а лише частина її, тому я вибрав "Написати запит, щоб вказати дані для передачі".
Я б запропонував записати та протестувати запит в окремому редакторі запитів, перш ніж перейти до Майстра.
5) І нарешті, вам потрібно вказати таблицю призначення, куди будуть обрані дані.
Я пропоную залишити його як [dbo].[Query]
або якусь власну Table
назву на випадок, якщо у вас виникнуть помилки експорту даних або якщо ви не впевнені в даних і хочете додатково проаналізувати їх, перш ніж перейти до потрібної таблиці.
А тепер переходимо прямо до кінця Майстра, натискаючи кнопки Далі / Готово .
BULK NSERT
або не маєте дозволів на це).