Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
После падения СХД БД немного в неадекватном состоянии. А конкретно таблица _AccntRegED8707 (как понял, это таблица значений субконто), проверка бд от сиквела ругается, что в индексах есть некая несогласованность, примерно так: Msg 8977, Level 16, State 1, Line 1 Table error: Object ID 233155976, index ID 1, partition ID 72057596818227200, alloc unit ID 72057596846145536 (type In-row data). Parent node for page (4:3642948) was not encountered. ....... There are 78052818 rows in 849504 pages for object "_AccntRegED8707". CHECKTABLE found 0 allocation errors and 97 consistency errors in table '_AccntRegED8707' (object ID 233155976). repair_rebuild is the minimum repair level for the errors found by DBCC CHECKTABLE Пробовал проверить таблицу через DBCC, с перестройкой индексов - фиг, не репайрит. Пробовал перестроить индексы через ALTER INDEX ALL ON [_AccntRegED8707] REBUILD WITH (ONLINE = OFF) - нет, говорит, у тебя несогласованность данных. Вот и думаю, может просто удалить индексы? Ну структуру-то скопировать сначала, конечно. Создать пустые и произвести ребилд средствами SQL? Просто не знаю, как 1С к этому отнесется, а спросить не у кого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 10:21 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
А о чем говорит вас MS SQL - о несогласованности данных, вам не приходило в голову, что на самом деле, он как-бы вообще не про индексы говорит... ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 10:33 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Не пойму, что тут у всех за манера - вопросом на вопрос отвечать. Откуда мысль, что речь не про "индексы вообще"? DBCC пишет: Msg 8935, Level 16, State 1, Line 1 Table error: Object ID 233155976, index ID 1, partition ID 72057596818227200, alloc unit ID 72057596846145536 (type In-row data). The previous link (4:3636297) on page (4:3669306) does not match the previous page (4:3674846) that the parent (1:348808), slot 57 expects for this page. и Msg 1505, Level 16, State 1, Line 1 The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo._AccntRegED8707' and the index name '_AccntR8707_ByPeriod_TRNRN'. The duplicate key value is (Sep 4 2012 7:59PM, 0x000000b6, 0x8376001b78e276c811e1f657f021ed5a, 1, 0x8219e62adc23f46c441dcd706e1946a6, 1). The statement has been terminated. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 10:43 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
(0) Индексы удалять можно. Скопируйте данные из этой таблицы в другую, создате индексы. Из[quot JohnAl] Msg 1505, Level 16, State 1, Line 1 The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo._AccntRegED8707' and the index name '_AccntR8707_ByPeriod_TRNRN'. The duplicate key value is (Sep 4 2012 7:59PM, 0x000000b6, 0x8376001b78e276c811e1f657f021ed5a, 1, 0x8219e62adc23f46c441dcd706e1946a6, 1). quot] следует что у вас сами данные кривые. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 11:10 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
JohnAl, Начинайте ремонт базы 1С всегда средствами 1С. 1. Запустите "тестирование и исправление" из конфигуратора. Если это не дает результатов, тогда только можно пробовать ср-ва MS SQL. 2. Попробуйте сделать пересчет итогов для регистра бухгалтерии, с которым у Вас проблема ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 11:16 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
nicktcher, _AccntRegEDхх - не таблица итогов, пересчёт не поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 11:39 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
[quot AHDP](0) Индексы удалять можно. Скопируйте данные из этой таблицы в другую, создате индексы. ИзJohnAlMsg 1505, Level 16, State 1, Line 1 The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo._AccntRegED8707' and the index name '_AccntR8707_ByPeriod_TRNRN'. The duplicate key value is (Sep 4 2012 7:59PM, 0x000000b6, 0x8376001b78e276c811e1f657f021ed5a, 1, 0x8219e62adc23f46c441dcd706e1946a6, 1). quot] следует что у вас сами данные кривые. А , в том смысле, что индекс не создается, потому что есть дубликат ключевого значения? Проблема данных, логично... Как бы это устранить теперь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 11:48 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Точнее, локализовать задвоенные данные средствами sql - можно. Но вот как удалять? Прямых связей между таблицами нет, каскадное удаление на уровне sql невозможно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 12:14 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Заскриптовать объекты. Create table _AccntRegEDtest Select into _AccntRegEDtest Distinct * from _AccntRegED8707 Drop table _AccntRegED8707 Create table _AccntRegED8707 Select into _AccntRegED8707 Distinct * from #_AccntRegED Create Index ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 12:33 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Каскадное удаление записей вам не нужно. Пересоздать таблицу нужно, т.к. из первого сообщения об ошибках следует, что дублирование записей не единственная ошибка. Потом можно поднять копию БД до краха и посмотреть на содержание таблиц более внимательно. Недостающие данные можно взять из архива, но стрёмно, альтернатива - перепроведение документов. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 12:38 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
AHDPЗаскриптовать объекты. Create table _AccntRegEDtest Select into _AccntRegEDtest Distinct * from _AccntRegED8707 Drop table _AccntRegED8707 Create table _AccntRegED8707 Select into _AccntRegED8707 Distinct * from #_AccntRegED Create Index Это не исправит не согласованность данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 12:39 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Ну почему. При вставке в новую таблицу задвоенных значений не станет. Но это не отменяет проблемы на уровне логики, ссылки на удаляемые значения могут быть в других таблицах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 13:10 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
JohnAlНу почему. При вставке в новую таблицу задвоенных значений не станет. Но это не отменяет проблемы на уровне логики, ссылки на удаляемые значения могут быть в других таблицах.Да потому, что не согласованность данных означает различия между данными таблицы и журнала транзакций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 13:58 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
The Dim!, И где это SQL говорит о несогласованности данных? Он говорит о крахе таблицы. А сведений о порушившихся данных уже давно может в логе и не быть... JohnAl, Ссылок на эту таблицу не может быть. Но вот корявые итоги по ней, если порушена, 1С построит запросто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 14:16 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
AHDPThe Dim!, И где это SQL говорит о несогласованности данных? Он говорит о крахе таблицы. А сведений о порушившихся данных уже давно может в логе и не быть... первый пост ТС JohnAl... Пробовал проверить таблицу через DBCC, с перестройкой индексов - фиг, не репайрит. Пробовал перестроить индексы через ALTER INDEX ALL ON [_AccntRegED8707] REBUILD WITH (ONLINE = OFF) - нет, г оворит, у тебя несогласованность данных. ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 14:26 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Таблицу он не менял, к базе подключился без ошибок... Уверен, что это вольный перевод топикстартера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 14:35 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
AHDPТаблицу он не менял, к базе подключился без ошибок... Уверен, что это вольный перевод топикстартера. Даже не так :) Это был вольный перевод, вольного перевода сообщения о ошибки MS SQL и вольного описания ситуации самим ТС. Я не придумывал - написал как прочёл сам. А что там имел в виду ТС... дык ХШ у меня нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 14:38 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Лог поломался первым. БД восстанавливал из статуса суспект и т.д. Главное ж - копия резервная есть, но на утро, а крах в 14-00, не устраивает бухов, верните как было. Вот и вилы. Вообще ошибок относительно немного - 67 записей, что к 90млн общих в таблице - не так уж чтобы очень. Про несогласованность. ALTER INDEX сообщает что не может создать индекс из-за дупликата ключа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 14:39 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
JohnAlВообще ошибок относительно немного - 67 записей, что к 90млн общих в таблице - не так уж чтобы очень. Это только на случай, если руками исправлять будете. Совет. Сверьте данные с таблицей из архива и перепроведите (по журналу регистрации действий пользователей) все документы, которые сегодня проводились. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 15:00 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Удалите индекс средствами сиквела. Найдите записи с дублем ключа запросом. Удалите дубли командой delete (Если все поля (а не только ключевые) идентичны - фокус с Select Distinct). Воссоздайте индекс с тем же именем. Должно заработать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 15:16 |
|
||
|
А можно ли в БП 8.1 удалять индексы средствами sql?
|
|||
|---|---|---|---|
|
#18+
Угу, примерно так и думал. Можно еще использовать конструкцию select ..., count(*) from ... group by ... HAVING count(*) > 1 Только потренироваться думал все ж на копии таблицы, если копировать без индексов, то по идее можно сразу искать дубли. Но пока бэкап идет, 500гб - долго... Спасибо всем большое за помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2012, 15:42 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=37948411&tid=1520234]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
191ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 316ms |

| 0 / 0 |
