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

Откуда:
Сообщений: 500
MS SQL Server 2000
Мне нужно добавить в существующую базу столбец. Но дело в том, что существует репликация этой базы на другой сервер.
В interprise manager через design table не удалось добавить. Как граммотно добавить столбец, чтобы не переделывать репликацию? Или нужно ли будет делать новую репликацию?
8 июл 09, 11:44    [7390421]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
lenash,

В EM - в свойствах публикации на закладке Filter Columns
или sp_repladdcolumn
8 июл 09, 11:53    [7390499]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
sp_repladdcolumn - это что? и где?

Вы правильно поняли, в таблице этого поля нет, мне физически добавить его надо? Через filter columns можно это сделать? И не нужно будет на сервере-подписчике это поле создавать?
8 июл 09, 12:38    [7390868]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
из QA візівать процедуру для добавления поля к реплицируемой таблице
-------------------------------------
Jedem Das Seine
8 июл 09, 12:53    [7390982]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
Maxx,


А как это сделать? Я просто никогда такого не делала? А как обычно сроки и быстро нужно сделать, так чтобы данные остались вцелости.
8 июл 09, 12:55    [7391004]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
Сначала в хепле смотрите какие аргументы идут в процедуру
имя таблицы,имя нового столбца,размерность констрейны
составляете правильный exec sp_repladdcolumn
открываете свое средство общения с сервером
выполняете запрос в контексте своей БД

смотрите на монитор репликации
-------------------------------------
Jedem Das Seine
8 июл 09, 12:57    [7391028]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
В какой справке? Как составить " правильный exec sp_repladdcolumn"? Можно подробнее?
Скажите после предложеного вами в базе подписчика не нужно будет добавлять столбец?
8 июл 09, 13:04    [7391086]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
1. справка -Books Online или в простонародье БОЛ , справочная система поставляемая вместе с МССКЛ
2. А кроме вас ето некому сделать? потому как у меня уже впечатление,что вам лично ето длать не рекомендовано ,причем очень , без обид
3. нет не надо

восрос ,у вас вообще есть где потренироватся ? чтоб не на живой машине ето делать ?
-------------------------------------
Jedem Das Seine
8 июл 09, 13:08    [7391121]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
Некому.
Поэтому и прошу развернутую подсказку.
8 июл 09, 13:34    [7391334]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
lenash,

добавление через ЕМ как описано выше добавляет в публикацию либо ранее непубликовавшиеся колонки в таблице, либо новые - тогда при добавлении новая колонка колонка появляется как
на издателе так и на всех подписчиках

переделывать публикацию не надо

ЕМ внутри себя использует sp_repladdcolumn

:) а вообще почитайте про репликацию в БОЛ как сказали выше
8 июл 09, 13:41    [7391395]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
Нашла синтаксис sp_repladdcolumn, а где писать эту процедуру. Я понимаю, что стоило бы самой покопаться, но просто времени нет читать английскую справку.
10 июл 09, 06:57    [7399869]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
Подскажи плиз, буду очень благодарна если пошагово, кинули как котенка.
10 июл 09, 09:13    [7400060]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
Делаю так:
в EM пр.кнопой по базе, в которой надо добавить столбец, Stored procedure, там пишу
sp_repladdcolumn dok_arch , net (т.е. в таблице dok_arch добавить столбец net )
А как выполнить эту процедуру?
10 июл 09, 09:38    [7400170]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
lenash,

Заходите в Enterprise Manager, раскрываете папку Publications в нужной базе,
Правой кнопкой на нужной публикации Свойства
Закладка Filter Columns, выделяете нужную таблицу и нажимаете Add Column To Table

или если не нравится через удобный графическиц интерфейс
в Query Analizer вручную пишете sp_repladdcolumn ..... и нажимаете F5
10 июл 09, 10:15    [7400343]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
lenash
Member

Откуда:
Сообщений: 500
На издателе выполнила процедуру sp_repladdcolumn, колонка добавилась, а на подписчике нет вот с таким сообщением
Warning: only Subscribers running SQL Server 2000 can synchronize with publication 'dokMain' because schema replication is performed.
Cannot add rows to sysdepends for the current stored procedure because it depends on the missing object 'sp_sel_CA98BC0CC72146BE6A7AFF6DA0B8433E_pal'. The stored procedure will still be created.


Это потому что в публикации не все колонки используются? Или причина в другом?
13 июл 09, 11:27    [7407369]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
i2akai1
Member

Откуда: Петербург
Сообщений: 217
lenash,

думаю в другом, а версии серверов подписчиков у вас тоже 2000?
13 июл 09, 13:52    [7408404]     Ответить | Цитировать Сообщить модератору
 Re: Добавить столбец  [new]
vino
Member

Откуда:
Сообщений: 1191
lenash
MS SQL Server 2000
Мне нужно добавить в существующую базу столбец. Но дело в том, что существует репликация этой базы на другой сервер.
В interprise manager через design table не удалось добавить. Как граммотно добавить столбец, чтобы не переделывать репликацию? Или нужно ли будет делать новую репликацию?

если я правильно понял, то вам нужен был столбец без репликации. Если это так, то в вашем случае создайте простую новую таблицу с внешним ключом к уже имеющейся и делайте там сколько угодно столбцов и храните в них, что хотите...
13 июл 09, 14:02    [7408484]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить