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

Откуда:
Сообщений: 286
Здравствуйте!
Пожалуйста подскажите как создать триггер производящей суммирование, т.е. есть таблица Zakaz (Заказ) в ней есть столбцы Cena(Цена), Kol_vo (Количество), Summa(Сумма). Триггер необходим для того чтобы введя значения в ячейки цены и кол-во автоматически рассчиталась сумма.
p.s. очень плохо разбираюсь в sql, пожалуйста напишите запрос полностью
1 май 13, 15:00    [14252554]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
invm
Member

Откуда: Москва
Сообщений: 9396
Для этого не нужен триггер. Достаточно добавить в таблицу вычисляемый столбец.
1 май 13, 15:09    [14252568]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Vadim33
Member

Откуда:
Сообщений: 286
invm, Вы бы не могли объяснить как это сделать
1 май 13, 15:36    [14252602]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
invm
Member

Откуда: Москва
Сообщений: 9396
Vadim33,

alter table Zakaz drop column Summa;
go
alter table Zakaz add Summa as cast(Cena * Kol_vo as <тип столбца Summa>);
go
Только сначала резервную копию БД сделайте. А еще лучше на кошках потренироваться.
1 май 13, 16:00    [14252627]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
invm,

2000
1 май 13, 16:46    [14252685]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
aleks2
Guest
locky
invm,

2000

Ну и чо? В 2000-м есть вычисляемые поля.
1 май 13, 16:50    [14252691]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
aleks2
locky
invm,

2000

Ну и чо? В 2000-м есть вычисляемые поля.

разве?
не помню уже...
1 май 13, 16:54    [14252695]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
invm
Member

Откуда: Москва
Сообщений: 9396
locky,

Они в 2000-м как раз и появились.
1 май 13, 16:58    [14252698]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Vadim33
Member

Откуда:
Сообщений: 286
invm, в типе столбца суммы что какой тип должен быть?
1 май 13, 17:34    [14252723]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
invm
Member

Откуда: Москва
Сообщений: 9396
Vadim33
invm, в типе столбца суммы что какой тип должен быть?
Откуда же мне знать? Это вы сами должны решить.
1 май 13, 17:46    [14252747]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Vadim33
Member

Откуда:
Сообщений: 286
invm,
Server: Msg 4924, Level 16, State 1, Line 1
ALTER TABLE DROP COLUMN failed because column 'Summa' does not exist in table 'Zakaz'.
Server: Msg 257, Level 16, State 3, Line 1
Implicit conversion from data type nvarchar to money is not allowed. Use the CONVERT function to run this query.

выдает такую ошибку

К сообщению приложен файл. Размер - 8Kb
1 май 13, 17:55    [14252756]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Glory
Member

Откуда:
Сообщений: 104760
Хранить количество в текстовом поле - это круто
1 май 13, 18:53    [14252857]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Vadim33
Member

Откуда:
Сообщений: 286
Glory,какой тип нужно?
1 май 13, 20:04    [14252919]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31425
Vadim33
Glory, какой тип нужно?
Может, картинка? Думаю, при с умножении двух полей типа money и int должна появиться картинка с суммой.
1 май 13, 22:18    [14253172]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Glory
Member

Откуда:
Сообщений: 104760
Vadim33
Glory,какой тип нужно?

Для чисел наверноено лучше всего подходит числовой тип данных, как вы думаете ?
2 май 13, 09:10    [14253846]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL SERVER 2000: Создание триггера  [new]
Vadim33
Member

Откуда:
Сообщений: 286
Glory, огромное спасибо, все работает
2 май 13, 11:35    [14253991]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить