Ошибка SQL State: 23000 Native: 1505
проблема: При загрузке в монопольном режиме SQL ругается:
SQL State: 23000
Native: 1505
Message: [Microsoft][ODBC SQL Server Driver][SQL Server]CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID 2. Most significant primary key is ' что-то там '.
SQL State: 01000
Native: 3621
Message: [Microsoft][ODBC SQL Server Driver][SQL Server]The statement has ben terminated. ---
что значит найдены дубли в _1SCRDOC
Решение:
Запрос к базе такого вида уничтожит все вторые дубли (у меня насчиталось 79 штук):
BASE_SQL_2005_MDF_LDF - имя базы на sql-сервере
DELETE FROM [BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC]
WHERE EXISTS (
SELECT * FROM [BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC] AS b
WHERE
b.[CHILDID] = [BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC].[CHILDID]
AND b.[MDID] = [BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC].[MDID]
AND b.[PARENTVAL] = [BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC].[PARENTVAL]
GROUP BY
b.[MDID], b.[CHILDID], b.[PARENTVAL]
HAVING
[BASE_SQL_2005_MDF_LDF].[DBO].[_1SCRDOC].[ROW_ID] > MIN( b.[ROW_ID])
)
|