powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Создание процедуры Update
7 сообщений из 7, страница 1 из 1
Создание процедуры Update
    #32026872
BooCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо создать процедуру, которая будет делать Update нескольких таблиц, но не в этом проблема, а вот в чем:

create procedure FirmUpdate
@A int
@B varchar(5)
@C varchar(5)
update Firm
set B = @B, C = @C
where A = A


exec FirmUpdate
'...', ''

'...'- здесь все нормально
''- а здесь за место того что нужно оставить будет вставлено нипойми что.
А надо, чтоб в незаполненых('') ковычках оставалось старое значение.


И вот еще вопрос: почему при внесении при помощи ХП в тех столбцах, которые остаются не заполненными
exec ....
'ad', '3', ''<-, ''<-
не проставляется Default
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32026883
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.
create procedure FirmUpdate
@A int,
@B varchar(5)=NULL,
@C varchar(5)=NULL

update Firm
set B = ISNULL(@B, B), C = ISNULL(@C, C)
where A = @A


Варианты вызывов процедуры

exec FirmUpdate 1, 'BBB', NULL
exec FirmUpdate @A=1, @B='BBB'
exec FirmUpdate 1, 'BBB', default



2.
BOL - SQL Server Architecture - Database Architecture - Logical Database Components - Constraints, Rules,
Defaults, and Triggers - Defaults
"Defaults specify what values are used in a column if you do not specify a value for the column when inserting a row . "

Т.е. для того, чтобы Default сработал для заданного поля, нужно чтобы это поле вообще не упоминалось в запросе на добавление.
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32026953
BooCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тогда другой вопрос: а можно ли это обойти? Путем извлечения данных после внесения в таблицу и замены их на Default.
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32026954
BooCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тогда другой вопрос: а можно ли это обойти? Путем извлечения данных после внесения в таблицу и замены их на Default.
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32026967
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, н это как-то через одно место. Зачем добавлять данные, для того чтобы тут же их исправить, при этом искать значение default.
Достаточно ведь просто НЕ УКАЗЫВАТЬ столбец при добавлении.
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32027447
BooCH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть ХП в которой прописаны все столбцы и мне надо чтобы при этом вносились и данные и Default.
...
Рейтинг: 0 / 0
Создание процедуры Update
    #32027494
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Придется выбирать:
либо указываете поле и вставляете значение
либо не указываете поле и сервер вставляет default значение
либо анализурете переданные вам параметры и используете динамический запрос
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Создание процедуры Update
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]