Имя: Пароль:
1C
1С v8
Можно ли перестроить индекс для одной таблицы?
0 Strogg
 
24.09.13
08:44
Всем привет. Случилась неприятная ситуация, при проведении одного документа стало вываливаться сообщение: "Попытка вставки неуникального значения в уникальный индекс". Нашел по поиску, что надо грохнуть индекс в таблице и стандартным ТИИ провести реиндексацию и реструктуризацию. Но вся заковыка в том, что база большая и поэтому реструктуризация проходит примерно пол-дня. А я не могу остановить производство на такое время. Есть ли способ реструктуризовать только одну, требуемую таблицу так, чтоб поправить индекс?
---
Кстати, изменил нумерацию документа с поломанным индексом, база провела реструктуризацию документа. После этого, стали проводиться документы, в которых есть ссылка на документ с поломанным индексом. Но поиск по строке так и отсутствует :(. И при выборе значения не позиционирует на выбранном документе.
1 Defender aka LINN
 
24.09.13
08:47
(0) Если уж ты его грохнул средствами СУБД, то почему бы ими же и не пересчитать?
2 Strogg
 
24.09.13
08:51
(1) да, сиквелом грохнул. Как пересчитать не знаю, вот и спросил. Что-то типа create unique index, штоле? :)
3 shuhard
 
24.09.13
08:51
(2) скорее dbcc
4 Defender aka LINN
 
24.09.13
08:54
(2) Кэп со словарем английского подсказывает, что create - это создание индекса. Хотя... А КАК ты его зачищал?
5 Strogg
 
24.09.13
08:58
6 shuhard
 
24.09.13
09:00
(5) тут нужно не гуглить, а мздеенить
http://technet.microsoft.com/ru-ru/library/ms181671.aspx
7 andreymongol82
 
24.09.13
09:11
(5) dbcc - это как бы команда для запуска встроеной функции, что-то вроде "фас". Например, dbcc checkdb (там есть, что-то и про реиндексацию, если индекс просто почистил, а не убил совсем)
8 Strogg
 
24.09.13
09:12
(6), (7), спасибо, камрады. Нашел DBCC CHECKTABLE. Щас буду копию ломать :).
9 Strogg
 
24.09.13
09:30
Вот чектейбл вроде оно, но как быть, если я уже физически грохнул индекс? :(
10 Sorm
 
24.09.13
09:38
(8) Индекс, как средство обеспечения уникальности данных в таблице, ты грохнул. Отлично. Теперь неплохо было бы его создать заново.
11 Strogg
 
24.09.13
09:38
(9)+ туплю. Я в копии грохнул индекс. Щас заресторю ночной бэкап)
12 Maxus43
 
24.09.13
09:40
в копии если на работающей таблице скажешь задачи - Drop and Create - тебе даже T-SQL покажет, и по созданию таблицы и по созданию индексов для неё
13 Strogg
 
24.09.13
16:29
В общем, ничего не помогло. Временно, изменил нумерацию, чтоб проведение работало, но при двойном щелчке он все равно не позиционирует на выбранном номере... думаю дальше.
14 shuhard
 
24.09.13
16:32
(13)[ничего не помогло. ]
поржал
ну заскриптуй ты в копии базы создание индекса и выполни в продуктиве, работы на 1 минуту
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.