При работе с SQL базой данных периодически возникает необходимость быстро почистить старые данные и отправить скажем внешним программистам и т.д.
Данная обработка работает по алгоритму:
1. Получение структуры базы данных в терминах СУБД;
(//infostart.ru/public/74608/)
2. Подключение к базе для обработки выбранных данных;
3. Очистка выбранных данных из основных таблиц (без табличных частей).
Автор подскажите как со скоростю работы обработки в больших информационых базах, есть ли возможность остановки работы обработки после нажатия кнопки выполнить. Зарание спасибо за ответ
(1) dyak84, У нас база с 2009 г. очищалась 5 мин (300 отгрузок в день). Прервать нельзя.
Нормально в режиме 1С-Предприятие после этого работает? Не валится с дампом, например, если из отчета по расшифровке пытаешься документ открыть?
Да, и еще вопрос насчет скорости очистки — та база, которая очищалась в ответе №2, какой размер (SQL) имела до и после? Примерно.
(3) kapustinag, Смотря что чистить! Регистры сведений чистить на пример — себе дороже.
На счет размеров — цель стояла другая (быстро почистить информацию). Для удовлетворения
пытливого ума — было 13 гб стало 3 гб (после шринка).
(4) Насчет регистров сведений — само собой.
Я имел в виду ту фразу, что в описании публикации: «…без табличных частей…».
То есть таблица, например, документа «Реализация товаров и услуг» почищена, а таблицы его табличных частей остались.
Об этом я и спрашивал — когда пытаешься открыть форму такого частично удаленного документа, все ОК, не валится 1С?
Скажем, если в результате какого-то сбоя инвалидные данные табличной части документа (несоответствие информации о количестве строк табличной части и реального количества строк в этой табличной части), то при попытке открыть форму документа программа завершается аварийно.
(5) kapustinag, На счет табличных частей конечно можно сделать второй запрос на удаление.
Лично мне при подготовке внешней базы этого было выше крыши. А по целостности базы тестирование
она прошла на ура!
Розница 1.0 на платформе 8.2.18, sql, при нажатии кнопки «Сформировать» во второй раз
{Форма.ФормаОтчета.Форма(63)}: Значение не является значением объектного типа (Execute)
SQLrst=SQLcon.Execute(cmd);
Собственно, понятно, что проблемы при подключении, было бы неплохо в описании подсказать, как сделать файл udl
(7) Ольга_tmp, похоже что дело не в подключении. Больше похоже на ошибку в запросе (попробуйте посмотреть значение cmd). А файл udl делается переименовыванием расширения пустого текстового файла.
(9) тебя поломали штоле?
(10) Пока нет, тфу тфу тфу.