Показать сообщение отдельно
Старый 12.04.2007, 21:54     # 7
Kvarx
Member
 
Регистрация: 26.09.2005
Адрес: Питер
Сообщения: 336

Kvarx Известность не заставит себя ждатьKvarx Известность не заставит себя ждать
Цитата:
Сообщение от Gunslinger Посмотреть сообщение
Ну а если по доброму это делать, то надо уникальный индекс построить по полю name без всяких триггеров
Я б тоже так сделал, но структура базы задана преподом.

Разобрался с триггерами, сделал вот так:
Код:
ALTER TRIGGER [dbo].[trigger1] ON [dbo].[articles]
AFTER INSERT
AS
DECLARE @rowcount int
select @rowcount = 0
SELECT @rowcount = COUNT(A.iid) FROM dbo.articles A, inserted i WHERE A.name = i.name
IF @rowcount != 1
BEGIN
	RAISERROR ('MyError 50001. Article already exists.', 16, 1)
	ROLLBACK TRANSACTION
END
Теперь другой вопрос:
1) Вроде из процедуры можно вернуть значение только целого типа. Но в задании надо как-то вернуть строку, а в другом целых два значения
2) И можно ли передать как параметр массив значений?
Kvarx вне форума