SQL: Перенести таблицу из одной базы в другую #600143


#0 by Dmitriy_Kolesnikov
Здравствуйте! Клиенты повредили базу. При попытке лечения получаю сообщение об ошибке: Ошибка SQL: Таблица не найдена '_Reference100' Другими словами, какой-то справочник в БД отсутствует напрочь. В режиме "Предприятие" база не открывается - вылетает с той же ошибкой. Но! Есть резервная копия двухдневной давности. И если бы свежая база открывалась, то с помощью обработки  ВыгрузкаЗагрузкаДанныхВФорматеXML можно было бы перенести документы за два дня в старую базу. Но не судьба. Какие идеи? Идея одна: обе базы развернуть на сервере приложений с MS SQL и в SQL Management studio скопировать таблицу _Reference100 из нерабочей базы в рабочую. Вопрос: как в SQL Management studio скопировать таблицу из одной базы в другую?
#1 by КМ155
заскриптовать в "хорошей", запустить скрипт в "плохой"
#2 by cw014
Если таблицы на одном сервере тогда: DELETE FROM db1._Reference100 INSERT INTO db1._Reference100 VALUES (SELECT Fld1, Fld2 FROM db2._Reference100)
#3 by asady
попробуй командой copy копируй сначала таблицу в файл потом копируй уже файл в таблицу
#4 by rs_trade
в старой базе заскриптуй нужную таблицу. в рабочей создай эту таблицу. потом перекинь данные через импорт-экспорт. там все просто и понятно мышкой делается.
#5 by H A D G E H O G s
Чую, что и в старой базе такой таблицы нет.
#6 by fisher
У сиквела мощные встроенные средства импорта/экпорта с интерактивными мастерами. Методом научного тыка все легко делается.
#7 by КМ155
а с паролем sa ТС сможет угандошить ешё и master и многое другое
#8 by rsv
"то с помощью обработки  ВыгрузкаЗагрузкаДанныхВФорматеXML можно было бы перенести документы за два дня в старую базу " . З а два дня..... Жесть. Вот так подсаживают на ВыгрузкаЗагрузкаДанныхВФорматеXML
#9 by rsv
+ select * INTO ТвояТаблицаВновойБазе From ТвояТаблицаВСтаройБазе Вроде все. Но это методологически неверно. Курсов нет. Сертификата нет. "Вещей нет-кражи нет "
#10 by hhhh
может не копировать, а просто создать таблицу с таким именем. Чтобы база запустилась. А скопировать можно потом обработкой ВыгрузкаЗагрузкаДанныхВФорматеXML.
#11 by КМ155
сомнительно, ВыгрузкаЗагрузкаДанныхВФорматеXML не создаст нужных полей и индексов в _Reference100
#12 by H A D G E H O G s
ВыгрузкаЗагрузкаДанныхВФорматеXML  - не создаст. 1С - создаст.
#13 by МихаилМ
в ssms 1) создаем таблицу с индексами в базе источнике выберите мышью таблицу источник правой кнопкой откройте контекстрое меню - scrip table as - create to - clipboard в базе приемнике new qwary - past   execute в тавлице _Reference  есть поле _Version с типом timestamp   поэтому с * не получиться и нужно указать в инсерт и селест все поля быстро получить список всех полей можно указав выводить результат запроса SELECT * FROM anyTable в виде текста  (контекстное меню - results to text) в полученной строке имен колонок удаляем пробелы, ставим запятые И удаляем поле _Version далее INSERT INTO _Reference100 (список полей) select список полей from  [БАЗА ИСТОЧНИК].dbo._Reference100
#14 by Dmitriy_Kolesnikov
Благодарю вас всех! База-то файловая... Попробовал выгрузить её в DT с целью переноса на MSSQL - платформа (15.294) вылетает... Для работы с базой данных в файле 1CD есть какие-нибудь инструменты?
#15 by rs_trade
База-то файловая. Какое не существенное уточнение. chdbfl.exe запускай тогда
#16 by МихаилМ
спасиббо автору перед chdbfl.exe сделайте архив тк она может окончательно разрушить базу
#17 by Dmitriy_Kolesnikov
rs_trade, я был абсолютно уверен, что смогу перенести её на MSSQL :) Ещё раз благодарю всех, тема закрыта.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С