Имя: Пароль:
1C
 
Удалил записи регистра сведений а размер таблицы стал только больше
,
0 Klesk666
 
03.12.16
09:51
Почистил дубликаты версий объектов, а размер стал только больше
Как такое может быть?

Процедура УдалитьВерсии(ТаблицаУдаляемыхВерсий)
    Для Каждого СтрТаблицаУдаляемыхВерсий Из ТаблицаУдаляемыхВерсий Цикл        
        МенеджерЗаписи = РегистрыСведений.ВерсииОбъектов.СоздатьМенеджерЗаписи();        
        МенеджерЗаписи.Объект = СтрТаблицаУдаляемыхВерсий.Объект;
        МенеджерЗаписи.НомерВерсии = СтрТаблицаУдаляемыхВерсий.НомерВерсии;        
        МенеджерЗаписи.Прочитать();        
        МенеджерЗаписи.Удалить();            
    КонецЦикла    
КонецПроцедуры

&НаСервере
Процедура ПереименуроватьВерсии(МассивОбрабатываемыхОбъектов);
        Для Сч=0 по МассивОбрабатываемыхОбъектов.Количество()-1 Цикл
            ТекущийОбъект=МассивОбрабатываемыхОбъектов[Сч];
            Отбор=Новый Структура("Объект",ТекущийОбъект);
            ВыборкаЗаписей = РегистрыСведений.ВерсииОбъектов.Выбрать(Отбор);
            СчетчикВерсий=1;
            Пока ВыборкаЗаписей.Следующий() Цикл
                МенеджерЗаписи = РегистрыСведений.ВерсииОбъектов.СоздатьМенеджерЗаписи();        
                МенеджерЗаписи.Объект = ВыборкаЗаписей.Объект;
                МенеджерЗаписи.НомерВерсии = ВыборкаЗаписей.НомерВерсии;        
                МенеджерЗаписи.Прочитать();        
                МенеджерЗаписи.НомерВерсии=СчетчикВерсий;        
                МенеджерЗаписи.Записать();
                СчетчикВерсий=СчетчикВерсий+1;
            КонецЦикла;
        КонецЦикла;
КонецПроцедуры
1 Cyberhawk
 
03.12.16
09:55
Так надо сжать таблицы-то, а если у регистр еще и периодический, то и итоги перед
этим пересчитать
2 Klesk666
 
03.12.16
09:57
делал шринк, этого недостаточно?

это в ТИИ, реструктуризация таблиц?
3 Cyberhawk
 
03.12.16
09:59
(2) Если база не файловая, то да - шринк, но может ты не того, что надо, шринк сделал, или без truncate, или еще чего. Читай МСДН.
В ТиИ пересчет итогов, но судя по всему тебе он не поможет.
4 Klesk666
 
03.12.16
10:03
регистр независимый непериодический , шринк делал из management studio
5 Cyberhawk
 
03.12.16
10:11
(4) Читай МСДН
6 Klesk666
 
03.12.16
10:23
(5) чукча не писатель ) почему средствами 1с не получается?
7 Klesk666
 
03.12.16
10:24
тьфу, чукча не читатель, ну вы поняли
8 Cyberhawk
 
03.12.16
11:01
(6) Так база серверная потому что, у 1С нет доступа до файлов СУБД
9 Лефмихалыч
 
03.12.16
11:03
(0) у тебя увеличился ldf. Потому, что вне зависимости от способа очистки регистра DELETE FROM делается по одной записи. Фулл бэкап, потом шринк лога.
10 Klesk666
 
03.12.16
11:32
(9) размер ldf 53 Мб, база симпл,   бэкап сделал, ну сжал его,
размер таблицы все равно больше чем до чистки
11 Лефмихалыч
 
03.12.16
11:34
скажи громко и четко в usb-порт: "truncate table"
12 Klesk666
 
03.12.16
11:34
(11) мне не надо чистить всю таблицу
13 Лефмихалыч
 
03.12.16
11:35
только это очистит регистр наиух полностью
14 Klesk666
 
03.12.16
11:35
(13) спасибо, что предупредил )
15 Лефмихалыч
 
03.12.16
11:40
Как ты определил, что размер таблицы увеличился?
16 Klesk666
 
03.12.16
11:43
в обозревателе объектов, таблицы, _infoRg7945, место занятое данными, было 5 503 232, стало 6 428 280
17 Лефмихалыч
 
03.12.16
12:00
(16) ПКМ по базе, Задачи...Сжать БД. Скольсо свободного места показывает?
18 Klesk666
 
03.12.16
12:04
(17) 19,49 МБ (0 %)
19 Лефмихалыч
 
03.12.16
12:14
ты не в ту таблицу смотришь или до удаления не в ту смотрел. Не бывает такого.
20 Фрэнки
 
03.12.16
13:45
а я бы сравнил не размеры в байтах, а количество записей. Если сжатие получилось в нужной таблице, то и отображаемое в 1С число записей совпадет с их числом в физической таблице.
21 Klesk666
 
04.12.16
11:40
(20) попробовал Еще раз, загрузил из dt

До обработки:
Количество записей - 2 251 648
Объем данных - 5 499 736

После:
2 079 464
6 449 040,00

мистика
22 Лефмихалыч
 
04.12.16
11:45
(21) кастани indexdefrag. Ты же не с краю таблицы записи грохнул, значит кластерный индекс регистра по-любому фрагментировался в результате твоих колдунств.
23 Лефмихалыч
 
04.12.16
11:47
точнее это теперь alter index reorganize, оказывается
24 Лефмихалыч
 
04.12.16
11:48
25 h-sp
 
04.12.16
12:39
(21) тии точно запускал? сжатие данных и переиндексация, реструктуризация.
26 Cyberhawk
 
04.12.16
12:42
(25) Сжатия в ТиИ для серверных баз нет
27 Klesk666
 
04.12.16
20:37
(24) пробовал скрипт с хабра, не помогло
ТИИ помогло, все пункты - объем данных - 4777896
интересно какой из них
28 Лефмихалыч
 
04.12.16
20:47
(27) реструктуризаяйца
29 Klesk666
 
05.12.16
09:04
(28) спасибо, а как в скуле это сделать?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn