powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Триггер на добавление новой записи в таблицу
4 сообщений из 4, страница 1 из 1
Триггер на добавление новой записи в таблицу
    #39950334
AMDshnik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
У меня есть 3 таблицы: Сеансы, билеты и зал. Нужно создать триггер на заполнение, который будет проверять количество билетов на определенный сеанс при добавлении новой записи в таблицу. Т.е. когда хотят добавить новую запись в билеты, где kolbil будет больше чем kolmest в zal - эта запись не должна добавляться в таблицу.
Так же у меня уже есть триггер для bilety , возможно его модифицировать, а не создавать новый чисто для проверки билетов.
Пробовал сам создать триггер нужный, не вышло. Подскажите, как лучше реализовать подобное?

table seans
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE TABLE seans
(
	idseans INT NOT NULL PRIMARY KEY IDENTITY,
	sfilm INT NOT NULL,
	datepokaz DATE NOT NULL,
	vrpokaz TIME(0) NOT NULL,
	stoimost MONEY NOT NULL,
	szal INT NOT NULL,
)




table bilety
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE bilety
(
	idbil INT NOT NULL PRIMARY KEY IDENTITY,
	bseans INT NOT NULL,
	kolbil INT NOT NULL,
	summa MONEY,
	FOREIGN KEY (bseans) REFERENCES seans (idseans)
)



table zal
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE TABLE zal 
(
	idzal INT NOT NULL PRIMARY KEY IDENTITY,
	zfilial INT NOT NULL,
	znaz VARCHAR(25) NOT NULL,
	kolmest INT NOT NULL,
	tip VARCHAR(25) NOT NULL
	FOREIGN KEY (zfilial) REFERENCES filial (idfilial)
)



trigger bilety
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE TRIGGER bilet_summa
ON bilety
FOR INSERT, UPDATE
AS

UPDATE bilety
	SET summa = b.kolbil * s.stoimost
	FROM bilety AS b
	JOIN seans AS s ON b.bseans = s.idseans
...
Рейтинг: 0 / 0
Триггер на добавление новой записи в таблицу
    #39950344
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AMDshnik
Пробовал сам создать триггер нужный, не вышло. Подскажите, как лучше реализовать подобное?
Так покажите, что вы пробовали, и что у вас не получилось.
AMDshnik
Так же у меня уже есть триггер для bilety
Он у вас неправильный, он рассчитывает сумму для всей таблицы, а не для тех записей, которые были изменены.
Препод такое не примет, несмотря на то, что хотя результат его работы правильный.
Читайте в хелпе "CREATE TRIGGER", это всего одна страница, обратите внимание на псевдотаблицы inserted, deleted
...
Рейтинг: 0 / 0
Триггер на добавление новой записи в таблицу
    #39950488
AMDshnik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alexeyvg, прочитал, особо это ситуацию не изменило, сложновато для меня на данный момент. Всё, что я пробовал, даже скидывать стыдно. Может примером решения поделитесь?
...
Рейтинг: 0 / 0
Триггер на добавление новой записи в таблицу
    #39950511
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AMDshnik,

Примеры триггеров приведены в справке.
Повторяю вопрос - что именно вы делали, и что получили в ответ?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Триггер на добавление новой записи в таблицу
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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