Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
пытаюсь перенести кластерный индекс в другую файловую группу

Create clustered index PK_Table_id
on dbo.Table (id) with drop_existing  on [SECONDARY] 
получаю ошибку
Cannot recreate index 'PK_Table_id'. The new index definition does not match the constraint being enforced by the existing index.
Какого типа ограничения могут ее вызывать??
29 окт 09, 17:28    [7858181]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Glory
Member

Откуда:
Сообщений: 104760
А вы смотрели index definition "старого" индекса ?
29 окт 09, 17:29    [7858203]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
Там только CONSTRAINT [PK_Table_Id] PRIMARY KEY CLUSTERED
29 окт 09, 17:39    [7858286]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Glory
Member

Откуда:
Сообщений: 104760
Wizandr
Там только CONSTRAINT [PK_Table_Id] PRIMARY KEY CLUSTERED

А полный текст можно увидеть ?
29 окт 09, 17:40    [7858294]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
ALTER TABLE [dbo].[Table] ADD  CONSTRAINT [PK_Table_Id] PRIMARY KEY CLUSTERED 
(
	[Id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON, FILLFACTOR = 90) ON [PRIMARY]
29 окт 09, 17:42    [7858323]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Glory
Member

Откуда:
Сообщений: 104760
DROP_EXISTING = { ON | OFF }
Specifies that the named, preexisting clustered, nonclustered, or XML index is dropped and rebuilt. The default is OFF.

ON
The existing index is dropped and rebuilt. The index name specified must be the same as a currently existing index; however, the index definition can be modified. For example, you can specify different columns, sort order, partition scheme, or index options

Имя констрейнта <> имя индекса
29 окт 09, 17:46    [7858354]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
У меня вроде там и там название индекса PK_Table_id
29 окт 09, 17:53    [7858410]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Glory
Member

Откуда:
Сообщений: 104760
Wizandr
У меня вроде там и там название индекса PK_Table_id

В том то и дело, что не может в базе быть двух объектов с одинаковыми именами
Поэтому констрейнт и индекс носят разные имена.
29 окт 09, 17:55    [7858428]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31220
Wizandr
У меня вроде там и там название индекса PK_Table_id
Это имя констрейна.
29 окт 09, 17:56    [7858439]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
Glory
DROP_EXISTING = { ON | OFF }
Specifies that the named, preexisting clustered, nonclustered, or XML index is dropped and rebuilt. The default is OFF.

ON
The existing index is dropped and rebuilt. The index name specified must be the same as a currently existing index; however, the index definition can be modified. For example, you can specify different columns, sort order, partition scheme, or index options

Имя констрейнта <> имя индекса

выделенная вами фраза гласит что "установленное имя должно быть таким же как у существующего индекса"?
29 окт 09, 18:01    [7858469]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Glory
Member

Откуда:
Сообщений: 104760
Wizandr
Glory
DROP_EXISTING = { ON | OFF }
Specifies that the named, preexisting clustered, nonclustered, or XML index is dropped and rebuilt. The default is OFF.

ON
The existing index is dropped and rebuilt. The index name specified must be the same as a currently existing index; however, the index definition can be modified. For example, you can specify different columns, sort order, partition scheme, or index options

Имя констрейнта <> имя индекса

выделенная вами фраза гласит что "установленное имя должно быть таким же как у существующего индекса"?

А вы упорно вместо имени индекса ставите имя констрейнта
29 окт 09, 19:01    [7858733]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
А если нужно перенести таблицу на которой куча внешних ключей. Как-то можно её перенести не удаляя эти кличи? Отключить их както?
30 окт 09, 10:50    [7860372]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31220
Wizandr
А если нужно перенести таблицу на которой куча внешних ключей. Как-то можно её перенести не удаляя эти кличи? Отключить их както?
Только удалить, а потом создать...
30 окт 09, 11:42    [7860873]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с переносом кластеного индекса в другую файловую группу  [new]
Wizandr
Member

Откуда: Империя Добра
Сообщений: 37004
alexeyvg, Glory

спасибо за помощь.

В результате переписал запрос в таком виде
CREATE unique clustered INDEX PK_Table_id ON dbo.Table
(id)
WITH (DROP_EXISTING=ON)
ON [SECONDARY]

и всё заработало
30 окт 09, 14:17    [7862502]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить