· 5 years ago · Mar 28, 2020, 02:12 PM
1exec sp_addtype Адрес
2 , "varchar()", "NOT NULL"
3go
4
5
6
7exec sp_addtype Дата
8 , "datetime", "NOT NULL"
9go
10
11
12
13exec sp_addtype Дата_и_время
14 , "datetime", "NOT NULL"
15go
16
17
18
19exec sp_addtype Деньги
20 , "money", "NOT NULL"
21go
22
23
24
25exec sp_addtype Имя
26 , "varchar(20)", "NOT NULL"
27go
28
29
30
31exec sp_addtype Код
32 , "integer", "NOT NULL"
33go
34
35
36
37exec sp_addtype Логический
38 , "bit", "NOT NULL"
39go
40
41
42
43exec sp_addtype Название
44 , "varchar(20)", "NOT NULL"
45go
46
47
48
49exec sp_addtype Текст
50 , "varchar()", "NOT NULL"
51go
52
53
54
55exec sp_addtype Телефон
56 , "numeric", "NOT NULL"
57go
58
59
60
61CREATE DEFAULT Стоимость
62 AS 0
63go
64
65
66
67CREATE RULE Rule_pol
68 AS @col IN ('М', 'Ж')
69go
70
71
72
73CREATE RULE Вид_рекамы
74 AS @col IN ('Стенды', 'Вывески', 'Таблички', 'Рекламные щиты')
75go
76
77
78
79CREATE TABLE Вид_рекламы
80(
81 Код_Заказа__OwnerEntitiy Код NULL ,
82 Описание Текст ,
83 Наименование_вида Имя
84)
85go
86
87
88
89ALTER TABLE Вид_рекламы
90 ADD CONSTRAINT XPKВид_рекламы PRIMARY KEY CLUSTERED (Наименование_вида ASC)
91go
92
93
94
95CREATE TABLE Должность
96(
97 Код_Должности__OwnerEntitiy Код ,
98 Наименование Название ,
99 Оклад Деньги ,
100 Обязанности Текст ,
101 Требования Текст
102)
103go
104
105
106
107ALTER TABLE Должность
108 ADD CONSTRAINT XPKДолжность PRIMARY KEY CLUSTERED (Код_Должности__OwnerEntitiy ASC)
109go
110
111
112
113CREATE TABLE Дополнительная_услуга
114(
115 Описание Текст ,
116 Стоимость Деньги ,
117 Наименование_услуги Имя
118)
119go
120
121
122
123ALTER TABLE Дополнительная_услуга
124 ADD CONSTRAINT XPKДополнительная_услуга PRIMARY KEY CLUSTERED (Наименование_услуги ASC)
125go
126
127
128
129CREATE TABLE Заказ
130(
131 Код_Заказчика__OwnerEntitiy Код NULL ,
132 Код_Заказа__OwnerEntitiy Код ,
133 Дата_и_время Дата_и_время ,
134 Дата_начала Дата ,
135 _Дата_окончания Дата ,
136 Место Имя ,
137 Наименование_доп_услуги Имя NULL ,
138 Услуга Имя ,
139 Стоимость Деньги ,
140 Код_Сотрудника__OwnerEntitiy Код NULL
141)
142go
143
144
145
146ALTER TABLE Заказ
147 ADD CONSTRAINT XPKЗаказ PRIMARY KEY CLUSTERED (Код_Заказа__OwnerEntitiy ASC)
148go
149
150
151
152CREATE TABLE Заказчик
153(
154 Код_Заказчика__OwnerEntitiy Код ,
155 Фамилия Имя ,
156 Имя Имя ,
157 Отчество Имя ,
158 Адрес Адрес ,
159 Телефон Телефон
160)
161go
162
163
164
165ALTER TABLE Заказчик
166 ADD CONSTRAINT XPKЗаказчик PRIMARY KEY CLUSTERED (Код_Заказчика__OwnerEntitiy ASC)
167go
168
169
170
171CREATE TABLE Заказчики_Сотрудников
172(
173 Код_Сотрудника__OwnerEntitiy Код ,
174 Код_Заказчика__OwnerEntitiy Код
175)
176go
177
178
179
180ALTER TABLE Заказчики_Сотрудников
181 ADD CONSTRAINT XPKЗаказчики_Сотрудников PRIMARY KEY CLUSTERED (Код_Сотрудника__OwnerEntitiy ASC,Код_Заказчика__OwnerEntitiy ASC)
182go
183
184
185
186CREATE TABLE Место_расположения
187(
188 Расположение Текст ,
189 Описание Текст ,
190 Стоимость Деньги ,
191 Наименование_места Имя ,
192 Наименование_вида Имя NULL
193)
194go
195
196
197
198ALTER TABLE Место_расположения
199 ADD CONSTRAINT XPKМесто_расположения PRIMARY KEY CLUSTERED (Наименование_места ASC)
200go
201
202
203
204CREATE TABLE Паспортные_данные
205(
206 Серия_и_номер__OwnerEntitiy Код ,
207 Организация_выдавшая Название ,
208 Дата Дата ,
209 Адрес_регистрации Адрес
210)
211go
212
213
214
215ALTER TABLE Паспортные_данные
216 ADD CONSTRAINT XPKПаспортные_данные PRIMARY KEY CLUSTERED (Серия_и_номер__OwnerEntitiy ASC)
217go
218
219
220
221CREATE TABLE Сотрудник
222(
223 Код_Сотрудника__OwnerEntitiy Код ,
224 Код_Должности__OwnerEntitiy Код NULL ,
225 Серия_и_номер_паспорта__OwnerEntitiy Код NULL ,
226 Фамилия Имя ,
227 Имя Имя ,
228 Отчество Имя ,
229 Возраст__OwnerEntitiy Код ,
230 Адрес Текст ,
231 Телефон Телефон ,
232 Пoл Имя
233)
234go
235
236
237
238ALTER TABLE Сотрудник
239 ADD CONSTRAINT XPKСотрудник PRIMARY KEY CLUSTERED (Код_Сотрудника__OwnerEntitiy ASC)
240go
241
242
243
244
245ALTER TABLE Вид_рекламы
246 ADD CONSTRAINT R_9 FOREIGN KEY (Код_Заказа__OwnerEntitiy) REFERENCES Заказ(Код_Заказа__OwnerEntitiy)
247go
248
249
250
251
252ALTER TABLE Заказ
253 ADD CONSTRAINT R_4 FOREIGN KEY (Код_Заказчика__OwnerEntitiy) REFERENCES Заказчик(Код_Заказчика__OwnerEntitiy)
254go
255
256
257
258
259ALTER TABLE Заказ
260 ADD CONSTRAINT R_11 FOREIGN KEY (Место) REFERENCES Место_расположения(Наименование_места)
261go
262
263
264
265
266ALTER TABLE Заказ
267 ADD CONSTRAINT R_12 FOREIGN KEY (Наименование_доп_услуги) REFERENCES Дополнительная_услуга(Наименование_услуги)
268go
269
270
271
272
273ALTER TABLE Заказ
274 ADD CONSTRAINT R_13 FOREIGN KEY (Код_Сотрудника__OwnerEntitiy) REFERENCES Сотрудник(Код_Сотрудника__OwnerEntitiy)
275go
276
277
278
279
280ALTER TABLE Заказчики_Сотрудников
281 ADD CONSTRAINT Обслуживает FOREIGN KEY (Код_Сотрудника__OwnerEntitiy) REFERENCES Сотрудник(Код_Сотрудника__OwnerEntitiy)
282go
283
284
285
286
287ALTER TABLE Заказчики_Сотрудников
288 ADD CONSTRAINT Обслуживается FOREIGN KEY (Код_Заказчика__OwnerEntitiy) REFERENCES Заказчик(Код_Заказчика__OwnerEntitiy)
289go
290
291
292
293
294ALTER TABLE Место_расположения
295 ADD CONSTRAINT R_10 FOREIGN KEY (Наименование_вида) REFERENCES Вид_рекламы(Наименование_вида)
296go
297
298
299
300
301ALTER TABLE Сотрудник
302 ADD CONSTRAINT R_3 FOREIGN KEY (Код_Должности__OwnerEntitiy) REFERENCES Должность(Код_Должности__OwnerEntitiy)
303go
304
305
306
307
308ALTER TABLE Сотрудник
309 ADD CONSTRAINT R_7 FOREIGN KEY (Серия_и_номер_паспорта__OwnerEntitiy) REFERENCES Паспортные_данные(Серия_и_номер__OwnerEntitiy)
310go
311
312
313
314
315CREATE TRIGGER tI_Вид_рекламы ON Вид_рекламы FOR INSERT AS
316/* ERwin Builtin Trigger */
317/* INSERT trigger on Вид_рекламы */
318BEGIN
319 DECLARE @NUMROWS int,
320 @nullcnt int,
321 @validcnt int,
322 @errno int,
323 @errmsg varchar(255)
324
325 SELECT @NUMROWS = @@rowcount
326 /* ERwin Builtin Trigger */
327 /* Заказ Имеет Вид_рекламы on child insert set null */
328 /* ERWIN_RELATION:CHECKSUM="000172be", PARENT_OWNER="", PARENT_TABLE="Заказ"
329 CHILD_OWNER="", CHILD_TABLE="Вид_рекламы"
330 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежит",
331 FK_CONSTRAINT="R_9", FK_COLUMNS="Код_Заказа__OwnerEntitiy" */
332 IF
333 /* %ChildFK(" OR",UPDATE) */
334 UPDATE(Код_Заказа__OwnerEntitiy)
335 BEGIN
336 UPDATE Вид_рекламы
337 SET
338 /* %SetFK(Вид_рекламы,NULL) */
339 Вид_рекламы.Код_Заказа__OwnerEntitiy = NULL
340 FROM Вид_рекламы,inserted
341 WHERE
342 /* %JoinPKPK(Вид_рекламы,inserted," = "," AND") */
343 Вид_рекламы.Наименование_вида = inserted.Наименование_вида AND
344
345 NOT EXISTS (
346 SELECT * FROM Заказ
347 WHERE
348 /* %JoinFKPK(inserted,Заказ," = "," AND") */
349 inserted.Код_Заказа__OwnerEntitiy = Заказ.Код_Заказа__OwnerEntitiy
350 )
351 END
352
353
354 /* ERwin Builtin Trigger */
355 RETURN
356ERROR:
357 raiserror @errno @errmsg
358 rollback transaction
359END
360
361go
362
363
364CREATE TRIGGER tD_Вид_рекламы ON Вид_рекламы FOR DELETE AS
365/* ERwin Builtin Trigger */
366/* DELETE trigger on Вид_рекламы */
367BEGIN
368 DECLARE @errno int,
369 @errmsg varchar(255)
370 /* ERwin Builtin Trigger */
371 /* Вид_рекламы Содержит Место_расположения on parent delete set null */
372 /* ERWIN_RELATION:CHECKSUM="0001165a", PARENT_OWNER="", PARENT_TABLE="Вид_рекламы"
373 CHILD_OWNER="", CHILD_TABLE="Место_расположения"
374 P2C_VERB_PHRASE="Содержит", C2P_VERB_PHRASE="Содержится",
375 FK_CONSTRAINT="R_10", FK_COLUMNS="Наименование_вида" */
376 UPDATE Место_расположения
377 SET
378 /* %SetFK(Место_расположения,NULL) */
379 Место_расположения.Наименование_вида = NULL
380 FROM Место_расположения,deleted
381 WHERE
382 /* %JoinFKPK(Место_расположения,deleted," = "," AND") */
383 Место_расположения.Наименование_вида = deleted.Наименование_вида
384
385
386 /* ERwin Builtin Trigger */
387 RETURN
388ERROR:
389 raiserror @errno @errmsg
390 rollback transaction
391END
392
393go
394
395
396CREATE TRIGGER tU_Вид_рекламы ON Вид_рекламы FOR UPDATE AS
397/* ERwin Builtin Trigger */
398/* UPDATE trigger on Вид_рекламы */
399BEGIN
400 DECLARE @NUMROWS int,
401 @nullcnt int,
402 @validcnt int,
403 @insНаименование_вида Имя,
404 @errno int,
405 @errmsg varchar(255)
406
407 SELECT @NUMROWS = @@rowcount
408 /* ERwin Builtin Trigger */
409 /* Вид_рекламы Содержит Место_расположения on parent update set null */
410 /* ERWIN_RELATION:CHECKSUM="0002a379", PARENT_OWNER="", PARENT_TABLE="Вид_рекламы"
411 CHILD_OWNER="", CHILD_TABLE="Место_расположения"
412 P2C_VERB_PHRASE="Содержит", C2P_VERB_PHRASE="Содержится",
413 FK_CONSTRAINT="R_10", FK_COLUMNS="Наименование_вида" */
414 IF
415 /* %ParentPK(" OR",UPDATE) */
416 UPDATE(Наименование_вида)
417 BEGIN
418 UPDATE Место_расположения
419 SET
420 /* %SetFK(Место_расположения,NULL) */
421 Место_расположения.Наименование_вида = NULL
422 FROM Место_расположения,deleted
423 WHERE
424 /* %JoinFKPK(Место_расположения,deleted," = "," AND") */
425 Место_расположения.Наименование_вида = deleted.Наименование_вида
426 END
427
428 /* ERwin Builtin Trigger */
429 /* Заказ Имеет Вид_рекламы on child update set null */
430 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Заказ"
431 CHILD_OWNER="", CHILD_TABLE="Вид_рекламы"
432 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежит",
433 FK_CONSTRAINT="R_9", FK_COLUMNS="Код_Заказа__OwnerEntitiy" */
434 IF
435 /* %ChildFK(" OR",UPDATE) */
436 UPDATE(Код_Заказа__OwnerEntitiy)
437 BEGIN
438 UPDATE Вид_рекламы
439 SET
440 /* %SetFK(Вид_рекламы,NULL) */
441 Вид_рекламы.Код_Заказа__OwnerEntitiy = NULL
442 FROM Вид_рекламы,inserted
443 WHERE
444 /* %JoinPKPK(Вид_рекламы,inserted," = "," AND") */
445 Вид_рекламы.Наименование_вида = inserted.Наименование_вида AND
446
447 NOT EXISTS (
448 SELECT * FROM Заказ
449 WHERE
450 /* %JoinFKPK(inserted,Заказ," = "," AND") */
451 inserted.Код_Заказа__OwnerEntitiy = Заказ.Код_Заказа__OwnerEntitiy
452 )
453 END
454
455
456 /* ERwin Builtin Trigger */
457 RETURN
458ERROR:
459 raiserror @errno @errmsg
460 rollback transaction
461END
462
463go
464
465
466
467
468CREATE TRIGGER tD_Должность ON Должность FOR DELETE AS
469/* ERwin Builtin Trigger */
470/* DELETE trigger on Должность */
471BEGIN
472 DECLARE @errno int,
473 @errmsg varchar(255)
474 /* ERwin Builtin Trigger */
475 /* Должность имеет Сотрудник on parent delete set null */
476 /* ERWIN_RELATION:CHECKSUM="00010413", PARENT_OWNER="", PARENT_TABLE="Должность"
477 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
478 P2C_VERB_PHRASE="имеет", C2P_VERB_PHRASE="принадлежит",
479 FK_CONSTRAINT="R_3", FK_COLUMNS="Код_Должности__OwnerEntitiy" */
480 UPDATE Сотрудник
481 SET
482 /* %SetFK(Сотрудник,NULL) */
483 Сотрудник.Код_Должности__OwnerEntitiy = NULL
484 FROM Сотрудник,deleted
485 WHERE
486 /* %JoinFKPK(Сотрудник,deleted," = "," AND") */
487 Сотрудник.Код_Должности__OwnerEntitiy = deleted.Код_Должности__OwnerEntitiy
488
489
490 /* ERwin Builtin Trigger */
491 RETURN
492ERROR:
493 raiserror @errno @errmsg
494 rollback transaction
495END
496
497go
498
499
500CREATE TRIGGER tU_Должность ON Должность FOR UPDATE AS
501/* ERwin Builtin Trigger */
502/* UPDATE trigger on Должность */
503BEGIN
504 DECLARE @NUMROWS int,
505 @nullcnt int,
506 @validcnt int,
507 @insКод_Должности__OwnerEntitiy Код,
508 @errno int,
509 @errmsg varchar(255)
510
511 SELECT @NUMROWS = @@rowcount
512 /* ERwin Builtin Trigger */
513 /* Должность имеет Сотрудник on parent update set null */
514 /* ERWIN_RELATION:CHECKSUM="000137bd", PARENT_OWNER="", PARENT_TABLE="Должность"
515 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
516 P2C_VERB_PHRASE="имеет", C2P_VERB_PHRASE="принадлежит",
517 FK_CONSTRAINT="R_3", FK_COLUMNS="Код_Должности__OwnerEntitiy" */
518 IF
519 /* %ParentPK(" OR",UPDATE) */
520 UPDATE(Код_Должности__OwnerEntitiy)
521 BEGIN
522 UPDATE Сотрудник
523 SET
524 /* %SetFK(Сотрудник,NULL) */
525 Сотрудник.Код_Должности__OwnerEntitiy = NULL
526 FROM Сотрудник,deleted
527 WHERE
528 /* %JoinFKPK(Сотрудник,deleted," = "," AND") */
529 Сотрудник.Код_Должности__OwnerEntitiy = deleted.Код_Должности__OwnerEntitiy
530 END
531
532
533 /* ERwin Builtin Trigger */
534 RETURN
535ERROR:
536 raiserror @errno @errmsg
537 rollback transaction
538END
539
540go
541
542
543
544
545CREATE TRIGGER tD_Дополнительная_услуга ON Дополнительная_услуга FOR DELETE AS
546/* ERwin Builtin Trigger */
547/* DELETE trigger on Дополнительная_услуга */
548BEGIN
549 DECLARE @errno int,
550 @errmsg varchar(255)
551 /* ERwin Builtin Trigger */
552 /* Дополнительная_услуга Содержится Заказ on parent delete set null */
553 /* ERWIN_RELATION:CHECKSUM="0000f35f", PARENT_OWNER="", PARENT_TABLE="Дополнительная_услуга"
554 CHILD_OWNER="", CHILD_TABLE="Заказ"
555 P2C_VERB_PHRASE="Содержится", C2P_VERB_PHRASE="Содержит",
556 FK_CONSTRAINT="R_12", FK_COLUMNS="Наименование_доп_услуги" */
557 UPDATE Заказ
558 SET
559 /* %SetFK(Заказ,NULL) */
560 Заказ.Наименование_доп_услуги = NULL
561 FROM Заказ,deleted
562 WHERE
563 /* %JoinFKPK(Заказ,deleted," = "," AND") */
564 Заказ.Наименование_доп_услуги = deleted.Наименование_услуги
565
566
567 /* ERwin Builtin Trigger */
568 RETURN
569ERROR:
570 raiserror @errno @errmsg
571 rollback transaction
572END
573
574go
575
576
577CREATE TRIGGER tU_Дополнительная_услуга ON Дополнительная_услуга FOR UPDATE AS
578/* ERwin Builtin Trigger */
579/* UPDATE trigger on Дополнительная_услуга */
580BEGIN
581 DECLARE @NUMROWS int,
582 @nullcnt int,
583 @validcnt int,
584 @insНаименование_услуги Имя,
585 @errno int,
586 @errmsg varchar(255)
587
588 SELECT @NUMROWS = @@rowcount
589 /* ERwin Builtin Trigger */
590 /* Дополнительная_услуга Содержится Заказ on parent update set null */
591 /* ERWIN_RELATION:CHECKSUM="000118b7", PARENT_OWNER="", PARENT_TABLE="Дополнительная_услуга"
592 CHILD_OWNER="", CHILD_TABLE="Заказ"
593 P2C_VERB_PHRASE="Содержится", C2P_VERB_PHRASE="Содержит",
594 FK_CONSTRAINT="R_12", FK_COLUMNS="Наименование_доп_услуги" */
595 IF
596 /* %ParentPK(" OR",UPDATE) */
597 UPDATE(Наименование_услуги)
598 BEGIN
599 UPDATE Заказ
600 SET
601 /* %SetFK(Заказ,NULL) */
602 Заказ.Наименование_доп_услуги = NULL
603 FROM Заказ,deleted
604 WHERE
605 /* %JoinFKPK(Заказ,deleted," = "," AND") */
606 Заказ.Наименование_доп_услуги = deleted.Наименование_услуги
607 END
608
609
610 /* ERwin Builtin Trigger */
611 RETURN
612ERROR:
613 raiserror @errno @errmsg
614 rollback transaction
615END
616
617go
618
619
620
621
622CREATE TRIGGER tI_Заказ ON Заказ FOR INSERT AS
623/* ERwin Builtin Trigger */
624/* INSERT trigger on Заказ */
625BEGIN
626 DECLARE @NUMROWS int,
627 @nullcnt int,
628 @validcnt int,
629 @errno int,
630 @errmsg varchar(255)
631
632 SELECT @NUMROWS = @@rowcount
633 /* ERwin Builtin Trigger */
634 /* Сотрудник Заказ on child insert set null */
635 /* ERWIN_RELATION:CHECKSUM="0005b591", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
636 CHILD_OWNER="", CHILD_TABLE="Заказ"
637 P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",
638 FK_CONSTRAINT="R_13", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
639 IF
640 /* %ChildFK(" OR",UPDATE) */
641 UPDATE(Код_Сотрудника__OwnerEntitiy)
642 BEGIN
643 UPDATE Заказ
644 SET
645 /* %SetFK(Заказ,NULL) */
646 Заказ.Код_Сотрудника__OwnerEntitiy = NULL
647 FROM Заказ,inserted
648 WHERE
649 /* %JoinPKPK(Заказ,inserted," = "," AND") */
650 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
651
652 NOT EXISTS (
653 SELECT * FROM Сотрудник
654 WHERE
655 /* %JoinFKPK(inserted,Сотрудник," = "," AND") */
656 inserted.Код_Сотрудника__OwnerEntitiy = Сотрудник.Код_Сотрудника__OwnerEntitiy
657 )
658 END
659
660 /* ERwin Builtin Trigger */
661 /* Дополнительная_услуга Содержится Заказ on child insert set null */
662 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Дополнительная_услуга"
663 CHILD_OWNER="", CHILD_TABLE="Заказ"
664 P2C_VERB_PHRASE="Содержится", C2P_VERB_PHRASE="Содержит",
665 FK_CONSTRAINT="R_12", FK_COLUMNS="Наименование_доп_услуги" */
666 IF
667 /* %ChildFK(" OR",UPDATE) */
668 UPDATE(Наименование_доп_услуги)
669 BEGIN
670 UPDATE Заказ
671 SET
672 /* %SetFK(Заказ,NULL) */
673 Заказ.Наименование_доп_услуги = NULL
674 FROM Заказ,inserted
675 WHERE
676 /* %JoinPKPK(Заказ,inserted," = "," AND") */
677 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
678
679 NOT EXISTS (
680 SELECT * FROM Дополнительная_услуга
681 WHERE
682 /* %JoinFKPK(inserted,Дополнительная_услуга," = "," AND") */
683 inserted.Наименование_доп_услуги = Дополнительная_услуга.Наименование_услуги
684 )
685 END
686
687 /* ERwin Builtin Trigger */
688 /* Место_расположения Имееет Заказ on child insert restrict */
689 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Место_расположения"
690 CHILD_OWNER="", CHILD_TABLE="Заказ"
691 P2C_VERB_PHRASE="Имееет", C2P_VERB_PHRASE="Имеется",
692 FK_CONSTRAINT="R_11", FK_COLUMNS="Место" */
693 IF
694 /* %ChildFK(" OR",UPDATE) */
695 UPDATE(Место)
696 BEGIN
697 SELECT @nullcnt = 0
698 SELECT @validcnt = count(*)
699 FROM inserted,Место_расположения
700 WHERE
701 /* %JoinFKPK(inserted,Место_расположения) */
702 inserted.Место = Место_расположения.Наименование_места
703 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," and") */
704
705 IF @validcnt + @nullcnt != @NUMROWS
706 BEGIN
707 SELECT @errno = 30002,
708 @errmsg = 'Cannot insert Заказ because Место_расположения does not exist.'
709 GOTO ERROR
710 END
711 END
712
713 /* ERwin Builtin Trigger */
714 /* Заказчик Оформляет Заказ on child insert set null */
715 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Заказчик"
716 CHILD_OWNER="", CHILD_TABLE="Заказ"
717 P2C_VERB_PHRASE="Оформляет", C2P_VERB_PHRASE="Оформляется",
718 FK_CONSTRAINT="R_4", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
719 IF
720 /* %ChildFK(" OR",UPDATE) */
721 UPDATE(Код_Заказчика__OwnerEntitiy)
722 BEGIN
723 UPDATE Заказ
724 SET
725 /* %SetFK(Заказ,NULL) */
726 Заказ.Код_Заказчика__OwnerEntitiy = NULL
727 FROM Заказ,inserted
728 WHERE
729 /* %JoinPKPK(Заказ,inserted," = "," AND") */
730 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
731
732 NOT EXISTS (
733 SELECT * FROM Заказчик
734 WHERE
735 /* %JoinFKPK(inserted,Заказчик," = "," AND") */
736 inserted.Код_Заказчика__OwnerEntitiy = Заказчик.Код_Заказчика__OwnerEntitiy
737 )
738 END
739
740
741 /* ERwin Builtin Trigger */
742 RETURN
743ERROR:
744 raiserror @errno @errmsg
745 rollback transaction
746END
747
748go
749
750
751CREATE TRIGGER tD_Заказ ON Заказ FOR DELETE AS
752/* ERwin Builtin Trigger */
753/* DELETE trigger on Заказ */
754BEGIN
755 DECLARE @errno int,
756 @errmsg varchar(255)
757 /* ERwin Builtin Trigger */
758 /* Заказ Имеет Вид_рекламы on parent delete set null */
759 /* ERWIN_RELATION:CHECKSUM="00010d8b", PARENT_OWNER="", PARENT_TABLE="Заказ"
760 CHILD_OWNER="", CHILD_TABLE="Вид_рекламы"
761 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежит",
762 FK_CONSTRAINT="R_9", FK_COLUMNS="Код_Заказа__OwnerEntitiy" */
763 UPDATE Вид_рекламы
764 SET
765 /* %SetFK(Вид_рекламы,NULL) */
766 Вид_рекламы.Код_Заказа__OwnerEntitiy = NULL
767 FROM Вид_рекламы,deleted
768 WHERE
769 /* %JoinFKPK(Вид_рекламы,deleted," = "," AND") */
770 Вид_рекламы.Код_Заказа__OwnerEntitiy = deleted.Код_Заказа__OwnerEntitiy
771
772
773 /* ERwin Builtin Trigger */
774 RETURN
775ERROR:
776 raiserror @errno @errmsg
777 rollback transaction
778END
779
780go
781
782
783CREATE TRIGGER tU_Заказ ON Заказ FOR UPDATE AS
784/* ERwin Builtin Trigger */
785/* UPDATE trigger on Заказ */
786BEGIN
787 DECLARE @NUMROWS int,
788 @nullcnt int,
789 @validcnt int,
790 @insКод_Заказа__OwnerEntitiy Код,
791 @errno int,
792 @errmsg varchar(255)
793
794 SELECT @NUMROWS = @@rowcount
795 /* ERwin Builtin Trigger */
796 /* Заказ Имеет Вид_рекламы on parent update set null */
797 /* ERWIN_RELATION:CHECKSUM="0006e04b", PARENT_OWNER="", PARENT_TABLE="Заказ"
798 CHILD_OWNER="", CHILD_TABLE="Вид_рекламы"
799 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежит",
800 FK_CONSTRAINT="R_9", FK_COLUMNS="Код_Заказа__OwnerEntitiy" */
801 IF
802 /* %ParentPK(" OR",UPDATE) */
803 UPDATE(Код_Заказа__OwnerEntitiy)
804 BEGIN
805 UPDATE Вид_рекламы
806 SET
807 /* %SetFK(Вид_рекламы,NULL) */
808 Вид_рекламы.Код_Заказа__OwnerEntitiy = NULL
809 FROM Вид_рекламы,deleted
810 WHERE
811 /* %JoinFKPK(Вид_рекламы,deleted," = "," AND") */
812 Вид_рекламы.Код_Заказа__OwnerEntitiy = deleted.Код_Заказа__OwnerEntitiy
813 END
814
815 /* ERwin Builtin Trigger */
816 /* Сотрудник Заказ on child update set null */
817 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
818 CHILD_OWNER="", CHILD_TABLE="Заказ"
819 P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",
820 FK_CONSTRAINT="R_13", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
821 IF
822 /* %ChildFK(" OR",UPDATE) */
823 UPDATE(Код_Сотрудника__OwnerEntitiy)
824 BEGIN
825 UPDATE Заказ
826 SET
827 /* %SetFK(Заказ,NULL) */
828 Заказ.Код_Сотрудника__OwnerEntitiy = NULL
829 FROM Заказ,inserted
830 WHERE
831 /* %JoinPKPK(Заказ,inserted," = "," AND") */
832 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
833
834 NOT EXISTS (
835 SELECT * FROM Сотрудник
836 WHERE
837 /* %JoinFKPK(inserted,Сотрудник," = "," AND") */
838 inserted.Код_Сотрудника__OwnerEntitiy = Сотрудник.Код_Сотрудника__OwnerEntitiy
839 )
840 END
841
842 /* ERwin Builtin Trigger */
843 /* Дополнительная_услуга Содержится Заказ on child update set null */
844 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Дополнительная_услуга"
845 CHILD_OWNER="", CHILD_TABLE="Заказ"
846 P2C_VERB_PHRASE="Содержится", C2P_VERB_PHRASE="Содержит",
847 FK_CONSTRAINT="R_12", FK_COLUMNS="Наименование_доп_услуги" */
848 IF
849 /* %ChildFK(" OR",UPDATE) */
850 UPDATE(Наименование_доп_услуги)
851 BEGIN
852 UPDATE Заказ
853 SET
854 /* %SetFK(Заказ,NULL) */
855 Заказ.Наименование_доп_услуги = NULL
856 FROM Заказ,inserted
857 WHERE
858 /* %JoinPKPK(Заказ,inserted," = "," AND") */
859 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
860
861 NOT EXISTS (
862 SELECT * FROM Дополнительная_услуга
863 WHERE
864 /* %JoinFKPK(inserted,Дополнительная_услуга," = "," AND") */
865 inserted.Наименование_доп_услуги = Дополнительная_услуга.Наименование_услуги
866 )
867 END
868
869 /* ERwin Builtin Trigger */
870 /* Место_расположения Имееет Заказ on child update restrict */
871 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Место_расположения"
872 CHILD_OWNER="", CHILD_TABLE="Заказ"
873 P2C_VERB_PHRASE="Имееет", C2P_VERB_PHRASE="Имеется",
874 FK_CONSTRAINT="R_11", FK_COLUMNS="Место" */
875 IF
876 /* %ChildFK(" OR",UPDATE) */
877 UPDATE(Место)
878 BEGIN
879 SELECT @nullcnt = 0
880 SELECT @validcnt = count(*)
881 FROM inserted,Место_расположения
882 WHERE
883 /* %JoinFKPK(inserted,Место_расположения) */
884 inserted.Место = Место_расположения.Наименование_места
885 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," AND") */
886
887 IF @validcnt + @nullcnt != @NUMROWS
888 BEGIN
889 SELECT @errno = 30007,
890 @errmsg = 'Cannot update Заказ because Место_расположения does not exist.'
891 GOTO ERROR
892 END
893 END
894
895 /* ERwin Builtin Trigger */
896 /* Заказчик Оформляет Заказ on child update set null */
897 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Заказчик"
898 CHILD_OWNER="", CHILD_TABLE="Заказ"
899 P2C_VERB_PHRASE="Оформляет", C2P_VERB_PHRASE="Оформляется",
900 FK_CONSTRAINT="R_4", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
901 IF
902 /* %ChildFK(" OR",UPDATE) */
903 UPDATE(Код_Заказчика__OwnerEntitiy)
904 BEGIN
905 UPDATE Заказ
906 SET
907 /* %SetFK(Заказ,NULL) */
908 Заказ.Код_Заказчика__OwnerEntitiy = NULL
909 FROM Заказ,inserted
910 WHERE
911 /* %JoinPKPK(Заказ,inserted," = "," AND") */
912 Заказ.Код_Заказа__OwnerEntitiy = inserted.Код_Заказа__OwnerEntitiy AND
913
914 NOT EXISTS (
915 SELECT * FROM Заказчик
916 WHERE
917 /* %JoinFKPK(inserted,Заказчик," = "," AND") */
918 inserted.Код_Заказчика__OwnerEntitiy = Заказчик.Код_Заказчика__OwnerEntitiy
919 )
920 END
921
922
923 /* ERwin Builtin Trigger */
924 RETURN
925ERROR:
926 raiserror @errno @errmsg
927 rollback transaction
928END
929
930go
931
932
933
934
935CREATE TRIGGER tD_Заказчик ON Заказчик FOR DELETE AS
936/* ERwin Builtin Trigger */
937/* DELETE trigger on Заказчик */
938BEGIN
939 DECLARE @errno int,
940 @errmsg varchar(255)
941 /* ERwin Builtin Trigger */
942 /* Заказчик Обслуживается Заказчики_Сотрудников on parent delete restrict */
943 /* ERWIN_RELATION:CHECKSUM="00022e27", PARENT_OWNER="", PARENT_TABLE="Заказчик"
944 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
945 P2C_VERB_PHRASE="Обслуживается", C2P_VERB_PHRASE="",
946 FK_CONSTRAINT="Обслуживается", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
947 IF EXISTS (
948 SELECT * FROM deleted,Заказчики_Сотрудников
949 WHERE
950 /* %JoinFKPK(Заказчики_Сотрудников,deleted," = "," AND") */
951 Заказчики_Сотрудников.Код_Заказчика__OwnerEntitiy = deleted.Код_Заказчика__OwnerEntitiy
952 )
953 BEGIN
954 SELECT @errno = 30001,
955 @errmsg = 'Cannot delete Заказчик because Заказчики_Сотрудников exists.'
956 GOTO ERROR
957 END
958
959 /* ERwin Builtin Trigger */
960 /* Заказчик Оформляет Заказ on parent delete set null */
961 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Заказчик"
962 CHILD_OWNER="", CHILD_TABLE="Заказ"
963 P2C_VERB_PHRASE="Оформляет", C2P_VERB_PHRASE="Оформляется",
964 FK_CONSTRAINT="R_4", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
965 UPDATE Заказ
966 SET
967 /* %SetFK(Заказ,NULL) */
968 Заказ.Код_Заказчика__OwnerEntitiy = NULL
969 FROM Заказ,deleted
970 WHERE
971 /* %JoinFKPK(Заказ,deleted," = "," AND") */
972 Заказ.Код_Заказчика__OwnerEntitiy = deleted.Код_Заказчика__OwnerEntitiy
973
974
975 /* ERwin Builtin Trigger */
976 RETURN
977ERROR:
978 raiserror @errno @errmsg
979 rollback transaction
980END
981
982go
983
984
985CREATE TRIGGER tU_Заказчик ON Заказчик FOR UPDATE AS
986/* ERwin Builtin Trigger */
987/* UPDATE trigger on Заказчик */
988BEGIN
989 DECLARE @NUMROWS int,
990 @nullcnt int,
991 @validcnt int,
992 @insКод_Заказчика__OwnerEntitiy Код,
993 @errno int,
994 @errmsg varchar(255)
995
996 SELECT @NUMROWS = @@rowcount
997 /* ERwin Builtin Trigger */
998 /* Заказчик Обслуживается Заказчики_Сотрудников on parent update restrict */
999 /* ERWIN_RELATION:CHECKSUM="00027428", PARENT_OWNER="", PARENT_TABLE="Заказчик"
1000 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1001 P2C_VERB_PHRASE="Обслуживается", C2P_VERB_PHRASE="",
1002 FK_CONSTRAINT="Обслуживается", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
1003 IF
1004 /* %ParentPK(" OR",UPDATE) */
1005 UPDATE(Код_Заказчика__OwnerEntitiy)
1006 BEGIN
1007 IF EXISTS (
1008 SELECT * FROM deleted,Заказчики_Сотрудников
1009 WHERE
1010 /* %JoinFKPK(Заказчики_Сотрудников,deleted," = "," AND") */
1011 Заказчики_Сотрудников.Код_Заказчика__OwnerEntitiy = deleted.Код_Заказчика__OwnerEntitiy
1012 )
1013 BEGIN
1014 SELECT @errno = 30005,
1015 @errmsg = 'Cannot update Заказчик because Заказчики_Сотрудников exists.'
1016 GOTO ERROR
1017 END
1018 END
1019
1020 /* ERwin Builtin Trigger */
1021 /* Заказчик Оформляет Заказ on parent update set null */
1022 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Заказчик"
1023 CHILD_OWNER="", CHILD_TABLE="Заказ"
1024 P2C_VERB_PHRASE="Оформляет", C2P_VERB_PHRASE="Оформляется",
1025 FK_CONSTRAINT="R_4", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
1026 IF
1027 /* %ParentPK(" OR",UPDATE) */
1028 UPDATE(Код_Заказчика__OwnerEntitiy)
1029 BEGIN
1030 UPDATE Заказ
1031 SET
1032 /* %SetFK(Заказ,NULL) */
1033 Заказ.Код_Заказчика__OwnerEntitiy = NULL
1034 FROM Заказ,deleted
1035 WHERE
1036 /* %JoinFKPK(Заказ,deleted," = "," AND") */
1037 Заказ.Код_Заказчика__OwnerEntitiy = deleted.Код_Заказчика__OwnerEntitiy
1038 END
1039
1040
1041 /* ERwin Builtin Trigger */
1042 RETURN
1043ERROR:
1044 raiserror @errno @errmsg
1045 rollback transaction
1046END
1047
1048go
1049
1050
1051
1052
1053CREATE TRIGGER tI_Заказчики_Сотрудников ON Заказчики_Сотрудников FOR INSERT AS
1054/* ERwin Builtin Trigger */
1055/* INSERT trigger on Заказчики_Сотрудников */
1056BEGIN
1057 DECLARE @NUMROWS int,
1058 @nullcnt int,
1059 @validcnt int,
1060 @errno int,
1061 @errmsg varchar(255)
1062
1063 SELECT @NUMROWS = @@rowcount
1064 /* ERwin Builtin Trigger */
1065 /* Заказчик Обслуживается Заказчики_Сотрудников on child insert restrict */
1066 /* ERWIN_RELATION:CHECKSUM="00030f0a", PARENT_OWNER="", PARENT_TABLE="Заказчик"
1067 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1068 P2C_VERB_PHRASE="Обслуживается", C2P_VERB_PHRASE="",
1069 FK_CONSTRAINT="Обслуживается", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
1070 IF
1071 /* %ChildFK(" OR",UPDATE) */
1072 UPDATE(Код_Заказчика__OwnerEntitiy)
1073 BEGIN
1074 SELECT @nullcnt = 0
1075 SELECT @validcnt = count(*)
1076 FROM inserted,Заказчик
1077 WHERE
1078 /* %JoinFKPK(inserted,Заказчик) */
1079 inserted.Код_Заказчика__OwnerEntitiy = Заказчик.Код_Заказчика__OwnerEntitiy
1080 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," and") */
1081
1082 IF @validcnt + @nullcnt != @NUMROWS
1083 BEGIN
1084 SELECT @errno = 30002,
1085 @errmsg = 'Cannot insert Заказчики_Сотрудников because Заказчик does not exist.'
1086 GOTO ERROR
1087 END
1088 END
1089
1090 /* ERwin Builtin Trigger */
1091 /* Сотрудник Обслуживает Заказчики_Сотрудников on child insert restrict */
1092 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1093 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1094 P2C_VERB_PHRASE="Обслуживает", C2P_VERB_PHRASE="",
1095 FK_CONSTRAINT="Обслуживает", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1096 IF
1097 /* %ChildFK(" OR",UPDATE) */
1098 UPDATE(Код_Сотрудника__OwnerEntitiy)
1099 BEGIN
1100 SELECT @nullcnt = 0
1101 SELECT @validcnt = count(*)
1102 FROM inserted,Сотрудник
1103 WHERE
1104 /* %JoinFKPK(inserted,Сотрудник) */
1105 inserted.Код_Сотрудника__OwnerEntitiy = Сотрудник.Код_Сотрудника__OwnerEntitiy
1106 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," and") */
1107
1108 IF @validcnt + @nullcnt != @NUMROWS
1109 BEGIN
1110 SELECT @errno = 30002,
1111 @errmsg = 'Cannot insert Заказчики_Сотрудников because Сотрудник does not exist.'
1112 GOTO ERROR
1113 END
1114 END
1115
1116
1117 /* ERwin Builtin Trigger */
1118 RETURN
1119ERROR:
1120 raiserror @errno @errmsg
1121 rollback transaction
1122END
1123
1124go
1125
1126
1127CREATE TRIGGER tU_Заказчики_Сотрудников ON Заказчики_Сотрудников FOR UPDATE AS
1128/* ERwin Builtin Trigger */
1129/* UPDATE trigger on Заказчики_Сотрудников */
1130BEGIN
1131 DECLARE @NUMROWS int,
1132 @nullcnt int,
1133 @validcnt int,
1134 @insКод_Сотрудника__OwnerEntitiy Код,
1135 @insКод_Заказчика__OwnerEntitiy Код,
1136 @errno int,
1137 @errmsg varchar(255)
1138
1139 SELECT @NUMROWS = @@rowcount
1140 /* ERwin Builtin Trigger */
1141 /* Заказчик Обслуживается Заказчики_Сотрудников on child update restrict */
1142 /* ERWIN_RELATION:CHECKSUM="000324df", PARENT_OWNER="", PARENT_TABLE="Заказчик"
1143 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1144 P2C_VERB_PHRASE="Обслуживается", C2P_VERB_PHRASE="",
1145 FK_CONSTRAINT="Обслуживается", FK_COLUMNS="Код_Заказчика__OwnerEntitiy" */
1146 IF
1147 /* %ChildFK(" OR",UPDATE) */
1148 UPDATE(Код_Заказчика__OwnerEntitiy)
1149 BEGIN
1150 SELECT @nullcnt = 0
1151 SELECT @validcnt = count(*)
1152 FROM inserted,Заказчик
1153 WHERE
1154 /* %JoinFKPK(inserted,Заказчик) */
1155 inserted.Код_Заказчика__OwnerEntitiy = Заказчик.Код_Заказчика__OwnerEntitiy
1156 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," AND") */
1157
1158 IF @validcnt + @nullcnt != @NUMROWS
1159 BEGIN
1160 SELECT @errno = 30007,
1161 @errmsg = 'Cannot update Заказчики_Сотрудников because Заказчик does not exist.'
1162 GOTO ERROR
1163 END
1164 END
1165
1166 /* ERwin Builtin Trigger */
1167 /* Сотрудник Обслуживает Заказчики_Сотрудников on child update restrict */
1168 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1169 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1170 P2C_VERB_PHRASE="Обслуживает", C2P_VERB_PHRASE="",
1171 FK_CONSTRAINT="Обслуживает", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1172 IF
1173 /* %ChildFK(" OR",UPDATE) */
1174 UPDATE(Код_Сотрудника__OwnerEntitiy)
1175 BEGIN
1176 SELECT @nullcnt = 0
1177 SELECT @validcnt = count(*)
1178 FROM inserted,Сотрудник
1179 WHERE
1180 /* %JoinFKPK(inserted,Сотрудник) */
1181 inserted.Код_Сотрудника__OwnerEntitiy = Сотрудник.Код_Сотрудника__OwnerEntitiy
1182 /* %NotnullFK(inserted," IS NULL","select @nullcnt = count(*) from inserted where"," AND") */
1183
1184 IF @validcnt + @nullcnt != @NUMROWS
1185 BEGIN
1186 SELECT @errno = 30007,
1187 @errmsg = 'Cannot update Заказчики_Сотрудников because Сотрудник does not exist.'
1188 GOTO ERROR
1189 END
1190 END
1191
1192
1193 /* ERwin Builtin Trigger */
1194 RETURN
1195ERROR:
1196 raiserror @errno @errmsg
1197 rollback transaction
1198END
1199
1200go
1201
1202
1203
1204
1205CREATE TRIGGER tI_Место_расположения ON Место_расположения FOR INSERT AS
1206/* ERwin Builtin Trigger */
1207/* INSERT trigger on Место_расположения */
1208BEGIN
1209 DECLARE @NUMROWS int,
1210 @nullcnt int,
1211 @validcnt int,
1212 @errno int,
1213 @errmsg varchar(255)
1214
1215 SELECT @NUMROWS = @@rowcount
1216 /* ERwin Builtin Trigger */
1217 /* Вид_рекламы Содержит Место_расположения on child insert set null */
1218 /* ERWIN_RELATION:CHECKSUM="00018890", PARENT_OWNER="", PARENT_TABLE="Вид_рекламы"
1219 CHILD_OWNER="", CHILD_TABLE="Место_расположения"
1220 P2C_VERB_PHRASE="Содержит", C2P_VERB_PHRASE="Содержится",
1221 FK_CONSTRAINT="R_10", FK_COLUMNS="Наименование_вида" */
1222 IF
1223 /* %ChildFK(" OR",UPDATE) */
1224 UPDATE(Наименование_вида)
1225 BEGIN
1226 UPDATE Место_расположения
1227 SET
1228 /* %SetFK(Место_расположения,NULL) */
1229 Место_расположения.Наименование_вида = NULL
1230 FROM Место_расположения,inserted
1231 WHERE
1232 /* %JoinPKPK(Место_расположения,inserted," = "," AND") */
1233 Место_расположения.Наименование_места = inserted.Наименование_места AND
1234
1235 NOT EXISTS (
1236 SELECT * FROM Вид_рекламы
1237 WHERE
1238 /* %JoinFKPK(inserted,Вид_рекламы," = "," AND") */
1239 inserted.Наименование_вида = Вид_рекламы.Наименование_вида
1240 )
1241 END
1242
1243
1244 /* ERwin Builtin Trigger */
1245 RETURN
1246ERROR:
1247 raiserror @errno @errmsg
1248 rollback transaction
1249END
1250
1251go
1252
1253
1254CREATE TRIGGER tD_Место_расположения ON Место_расположения FOR DELETE AS
1255/* ERwin Builtin Trigger */
1256/* DELETE trigger on Место_расположения */
1257BEGIN
1258 DECLARE @errno int,
1259 @errmsg varchar(255)
1260 /* ERwin Builtin Trigger */
1261 /* Место_расположения Имееет Заказ on parent delete restrict */
1262 /* ERWIN_RELATION:CHECKSUM="0000f234", PARENT_OWNER="", PARENT_TABLE="Место_расположения"
1263 CHILD_OWNER="", CHILD_TABLE="Заказ"
1264 P2C_VERB_PHRASE="Имееет", C2P_VERB_PHRASE="Имеется",
1265 FK_CONSTRAINT="R_11", FK_COLUMNS="Место" */
1266 IF EXISTS (
1267 SELECT * FROM deleted,Заказ
1268 WHERE
1269 /* %JoinFKPK(Заказ,deleted," = "," AND") */
1270 Заказ.Место = deleted.Наименование_места
1271 )
1272 BEGIN
1273 SELECT @errno = 30001,
1274 @errmsg = 'Cannot delete Место_расположения because Заказ exists.'
1275 GOTO ERROR
1276 END
1277
1278
1279 /* ERwin Builtin Trigger */
1280 RETURN
1281ERROR:
1282 raiserror @errno @errmsg
1283 rollback transaction
1284END
1285
1286go
1287
1288
1289CREATE TRIGGER tU_Место_расположения ON Место_расположения FOR UPDATE AS
1290/* ERwin Builtin Trigger */
1291/* UPDATE trigger on Место_расположения */
1292BEGIN
1293 DECLARE @NUMROWS int,
1294 @nullcnt int,
1295 @validcnt int,
1296 @insНаименование_места Имя,
1297 @errno int,
1298 @errmsg varchar(255)
1299
1300 SELECT @NUMROWS = @@rowcount
1301 /* ERwin Builtin Trigger */
1302 /* Место_расположения Имееет Заказ on parent update restrict */
1303 /* ERWIN_RELATION:CHECKSUM="0002928b", PARENT_OWNER="", PARENT_TABLE="Место_расположения"
1304 CHILD_OWNER="", CHILD_TABLE="Заказ"
1305 P2C_VERB_PHRASE="Имееет", C2P_VERB_PHRASE="Имеется",
1306 FK_CONSTRAINT="R_11", FK_COLUMNS="Место" */
1307 IF
1308 /* %ParentPK(" OR",UPDATE) */
1309 UPDATE(Наименование_места)
1310 BEGIN
1311 IF EXISTS (
1312 SELECT * FROM deleted,Заказ
1313 WHERE
1314 /* %JoinFKPK(Заказ,deleted," = "," AND") */
1315 Заказ.Место = deleted.Наименование_места
1316 )
1317 BEGIN
1318 SELECT @errno = 30005,
1319 @errmsg = 'Cannot update Место_расположения because Заказ exists.'
1320 GOTO ERROR
1321 END
1322 END
1323
1324 /* ERwin Builtin Trigger */
1325 /* Вид_рекламы Содержит Место_расположения on child update set null */
1326 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Вид_рекламы"
1327 CHILD_OWNER="", CHILD_TABLE="Место_расположения"
1328 P2C_VERB_PHRASE="Содержит", C2P_VERB_PHRASE="Содержится",
1329 FK_CONSTRAINT="R_10", FK_COLUMNS="Наименование_вида" */
1330 IF
1331 /* %ChildFK(" OR",UPDATE) */
1332 UPDATE(Наименование_вида)
1333 BEGIN
1334 UPDATE Место_расположения
1335 SET
1336 /* %SetFK(Место_расположения,NULL) */
1337 Место_расположения.Наименование_вида = NULL
1338 FROM Место_расположения,inserted
1339 WHERE
1340 /* %JoinPKPK(Место_расположения,inserted," = "," AND") */
1341 Место_расположения.Наименование_места = inserted.Наименование_места AND
1342
1343 NOT EXISTS (
1344 SELECT * FROM Вид_рекламы
1345 WHERE
1346 /* %JoinFKPK(inserted,Вид_рекламы," = "," AND") */
1347 inserted.Наименование_вида = Вид_рекламы.Наименование_вида
1348 )
1349 END
1350
1351
1352 /* ERwin Builtin Trigger */
1353 RETURN
1354ERROR:
1355 raiserror @errno @errmsg
1356 rollback transaction
1357END
1358
1359go
1360
1361
1362
1363
1364CREATE TRIGGER tD_Паспортные_данные ON Паспортные_данные FOR DELETE AS
1365/* ERwin Builtin Trigger */
1366/* DELETE trigger on Паспортные_данные */
1367BEGIN
1368 DECLARE @errno int,
1369 @errmsg varchar(255)
1370 /* ERwin Builtin Trigger */
1371 /* Паспортные_данные Имеет Сотрудник on parent delete set null */
1372 /* ERWIN_RELATION:CHECKSUM="000111ea", PARENT_OWNER="", PARENT_TABLE="Паспортные_данные"
1373 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1374 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежат",
1375 FK_CONSTRAINT="R_7", FK_COLUMNS="Серия_и_номер_паспорта__OwnerEntitiy" */
1376 UPDATE Сотрудник
1377 SET
1378 /* %SetFK(Сотрудник,NULL) */
1379 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = NULL
1380 FROM Сотрудник,deleted
1381 WHERE
1382 /* %JoinFKPK(Сотрудник,deleted," = "," AND") */
1383 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = deleted.Серия_и_номер__OwnerEntitiy
1384
1385
1386 /* ERwin Builtin Trigger */
1387 RETURN
1388ERROR:
1389 raiserror @errno @errmsg
1390 rollback transaction
1391END
1392
1393go
1394
1395
1396CREATE TRIGGER tU_Паспортные_данные ON Паспортные_данные FOR UPDATE AS
1397/* ERwin Builtin Trigger */
1398/* UPDATE trigger on Паспортные_данные */
1399BEGIN
1400 DECLARE @NUMROWS int,
1401 @nullcnt int,
1402 @validcnt int,
1403 @insСерия_и_номер__OwnerEntitiy Код,
1404 @errno int,
1405 @errmsg varchar(255)
1406
1407 SELECT @NUMROWS = @@rowcount
1408 /* ERwin Builtin Trigger */
1409 /* Паспортные_данные Имеет Сотрудник on parent update set null */
1410 /* ERWIN_RELATION:CHECKSUM="0001384a", PARENT_OWNER="", PARENT_TABLE="Паспортные_данные"
1411 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1412 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежат",
1413 FK_CONSTRAINT="R_7", FK_COLUMNS="Серия_и_номер_паспорта__OwnerEntitiy" */
1414 IF
1415 /* %ParentPK(" OR",UPDATE) */
1416 UPDATE(Серия_и_номер__OwnerEntitiy)
1417 BEGIN
1418 UPDATE Сотрудник
1419 SET
1420 /* %SetFK(Сотрудник,NULL) */
1421 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = NULL
1422 FROM Сотрудник,deleted
1423 WHERE
1424 /* %JoinFKPK(Сотрудник,deleted," = "," AND") */
1425 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = deleted.Серия_и_номер__OwnerEntitiy
1426 END
1427
1428
1429 /* ERwin Builtin Trigger */
1430 RETURN
1431ERROR:
1432 raiserror @errno @errmsg
1433 rollback transaction
1434END
1435
1436go
1437
1438
1439
1440
1441CREATE TRIGGER tI_Сотрудник ON Сотрудник FOR INSERT AS
1442/* ERwin Builtin Trigger */
1443/* INSERT trigger on Сотрудник */
1444BEGIN
1445 DECLARE @NUMROWS int,
1446 @nullcnt int,
1447 @validcnt int,
1448 @errno int,
1449 @errmsg varchar(255)
1450
1451 SELECT @NUMROWS = @@rowcount
1452 /* ERwin Builtin Trigger */
1453 /* Паспортные_данные Имеет Сотрудник on child insert set null */
1454 /* ERWIN_RELATION:CHECKSUM="00030f2f", PARENT_OWNER="", PARENT_TABLE="Паспортные_данные"
1455 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1456 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежат",
1457 FK_CONSTRAINT="R_7", FK_COLUMNS="Серия_и_номер_паспорта__OwnerEntitiy" */
1458 IF
1459 /* %ChildFK(" OR",UPDATE) */
1460 UPDATE(Серия_и_номер_паспорта__OwnerEntitiy)
1461 BEGIN
1462 UPDATE Сотрудник
1463 SET
1464 /* %SetFK(Сотрудник,NULL) */
1465 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = NULL
1466 FROM Сотрудник,inserted
1467 WHERE
1468 /* %JoinPKPK(Сотрудник,inserted," = "," AND") */
1469 Сотрудник.Код_Сотрудника__OwnerEntitiy = inserted.Код_Сотрудника__OwnerEntitiy AND
1470
1471 NOT EXISTS (
1472 SELECT * FROM Паспортные_данные
1473 WHERE
1474 /* %JoinFKPK(inserted,Паспортные_данные," = "," AND") */
1475 inserted.Серия_и_номер_паспорта__OwnerEntitiy = Паспортные_данные.Серия_и_номер__OwnerEntitiy
1476 )
1477 END
1478
1479 /* ERwin Builtin Trigger */
1480 /* Должность имеет Сотрудник on child insert set null */
1481 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Должность"
1482 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1483 P2C_VERB_PHRASE="имеет", C2P_VERB_PHRASE="принадлежит",
1484 FK_CONSTRAINT="R_3", FK_COLUMNS="Код_Должности__OwnerEntitiy" */
1485 IF
1486 /* %ChildFK(" OR",UPDATE) */
1487 UPDATE(Код_Должности__OwnerEntitiy)
1488 BEGIN
1489 UPDATE Сотрудник
1490 SET
1491 /* %SetFK(Сотрудник,NULL) */
1492 Сотрудник.Код_Должности__OwnerEntitiy = NULL
1493 FROM Сотрудник,inserted
1494 WHERE
1495 /* %JoinPKPK(Сотрудник,inserted," = "," AND") */
1496 Сотрудник.Код_Сотрудника__OwnerEntitiy = inserted.Код_Сотрудника__OwnerEntitiy AND
1497
1498 NOT EXISTS (
1499 SELECT * FROM Должность
1500 WHERE
1501 /* %JoinFKPK(inserted,Должность," = "," AND") */
1502 inserted.Код_Должности__OwnerEntitiy = Должность.Код_Должности__OwnerEntitiy
1503 )
1504 END
1505
1506
1507 /* ERwin Builtin Trigger */
1508 RETURN
1509ERROR:
1510 raiserror @errno @errmsg
1511 rollback transaction
1512END
1513
1514go
1515
1516
1517CREATE TRIGGER tD_Сотрудник ON Сотрудник FOR DELETE AS
1518/* ERwin Builtin Trigger */
1519/* DELETE trigger on Сотрудник */
1520BEGIN
1521 DECLARE @errno int,
1522 @errmsg varchar(255)
1523 /* ERwin Builtin Trigger */
1524 /* Сотрудник Заказ on parent delete set null */
1525 /* ERWIN_RELATION:CHECKSUM="0002399f", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1526 CHILD_OWNER="", CHILD_TABLE="Заказ"
1527 P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",
1528 FK_CONSTRAINT="R_13", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1529 UPDATE Заказ
1530 SET
1531 /* %SetFK(Заказ,NULL) */
1532 Заказ.Код_Сотрудника__OwnerEntitiy = NULL
1533 FROM Заказ,deleted
1534 WHERE
1535 /* %JoinFKPK(Заказ,deleted," = "," AND") */
1536 Заказ.Код_Сотрудника__OwnerEntitiy = deleted.Код_Сотрудника__OwnerEntitiy
1537
1538 /* ERwin Builtin Trigger */
1539 /* Сотрудник Обслуживает Заказчики_Сотрудников on parent delete restrict */
1540 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1541 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1542 P2C_VERB_PHRASE="Обслуживает", C2P_VERB_PHRASE="",
1543 FK_CONSTRAINT="Обслуживает", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1544 IF EXISTS (
1545 SELECT * FROM deleted,Заказчики_Сотрудников
1546 WHERE
1547 /* %JoinFKPK(Заказчики_Сотрудников,deleted," = "," AND") */
1548 Заказчики_Сотрудников.Код_Сотрудника__OwnerEntitiy = deleted.Код_Сотрудника__OwnerEntitiy
1549 )
1550 BEGIN
1551 SELECT @errno = 30001,
1552 @errmsg = 'Cannot delete Сотрудник because Заказчики_Сотрудников exists.'
1553 GOTO ERROR
1554 END
1555
1556
1557 /* ERwin Builtin Trigger */
1558 RETURN
1559ERROR:
1560 raiserror @errno @errmsg
1561 rollback transaction
1562END
1563
1564go
1565
1566
1567CREATE TRIGGER tU_Сотрудник ON Сотрудник FOR UPDATE AS
1568/* ERwin Builtin Trigger */
1569/* UPDATE trigger on Сотрудник */
1570BEGIN
1571 DECLARE @NUMROWS int,
1572 @nullcnt int,
1573 @validcnt int,
1574 @insКод_Сотрудника__OwnerEntitiy Код,
1575 @errno int,
1576 @errmsg varchar(255)
1577
1578 SELECT @NUMROWS = @@rowcount
1579 /* ERwin Builtin Trigger */
1580 /* Сотрудник Заказ on parent update set null */
1581 /* ERWIN_RELATION:CHECKSUM="000597fd", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1582 CHILD_OWNER="", CHILD_TABLE="Заказ"
1583 P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",
1584 FK_CONSTRAINT="R_13", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1585 IF
1586 /* %ParentPK(" OR",UPDATE) */
1587 UPDATE(Код_Сотрудника__OwnerEntitiy)
1588 BEGIN
1589 UPDATE Заказ
1590 SET
1591 /* %SetFK(Заказ,NULL) */
1592 Заказ.Код_Сотрудника__OwnerEntitiy = NULL
1593 FROM Заказ,deleted
1594 WHERE
1595 /* %JoinFKPK(Заказ,deleted," = "," AND") */
1596 Заказ.Код_Сотрудника__OwnerEntitiy = deleted.Код_Сотрудника__OwnerEntitiy
1597 END
1598
1599 /* ERwin Builtin Trigger */
1600 /* Сотрудник Обслуживает Заказчики_Сотрудников on parent update restrict */
1601 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Сотрудник"
1602 CHILD_OWNER="", CHILD_TABLE="Заказчики_Сотрудников"
1603 P2C_VERB_PHRASE="Обслуживает", C2P_VERB_PHRASE="",
1604 FK_CONSTRAINT="Обслуживает", FK_COLUMNS="Код_Сотрудника__OwnerEntitiy" */
1605 IF
1606 /* %ParentPK(" OR",UPDATE) */
1607 UPDATE(Код_Сотрудника__OwnerEntitiy)
1608 BEGIN
1609 IF EXISTS (
1610 SELECT * FROM deleted,Заказчики_Сотрудников
1611 WHERE
1612 /* %JoinFKPK(Заказчики_Сотрудников,deleted," = "," AND") */
1613 Заказчики_Сотрудников.Код_Сотрудника__OwnerEntitiy = deleted.Код_Сотрудника__OwnerEntitiy
1614 )
1615 BEGIN
1616 SELECT @errno = 30005,
1617 @errmsg = 'Cannot update Сотрудник because Заказчики_Сотрудников exists.'
1618 GOTO ERROR
1619 END
1620 END
1621
1622 /* ERwin Builtin Trigger */
1623 /* Паспортные_данные Имеет Сотрудник on child update set null */
1624 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Паспортные_данные"
1625 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1626 P2C_VERB_PHRASE="Имеет", C2P_VERB_PHRASE="Принадлежат",
1627 FK_CONSTRAINT="R_7", FK_COLUMNS="Серия_и_номер_паспорта__OwnerEntitiy" */
1628 IF
1629 /* %ChildFK(" OR",UPDATE) */
1630 UPDATE(Серия_и_номер_паспорта__OwnerEntitiy)
1631 BEGIN
1632 UPDATE Сотрудник
1633 SET
1634 /* %SetFK(Сотрудник,NULL) */
1635 Сотрудник.Серия_и_номер_паспорта__OwnerEntitiy = NULL
1636 FROM Сотрудник,inserted
1637 WHERE
1638 /* %JoinPKPK(Сотрудник,inserted," = "," AND") */
1639 Сотрудник.Код_Сотрудника__OwnerEntitiy = inserted.Код_Сотрудника__OwnerEntitiy AND
1640
1641 NOT EXISTS (
1642 SELECT * FROM Паспортные_данные
1643 WHERE
1644 /* %JoinFKPK(inserted,Паспортные_данные," = "," AND") */
1645 inserted.Серия_и_номер_паспорта__OwnerEntitiy = Паспортные_данные.Серия_и_номер__OwnerEntitiy
1646 )
1647 END
1648
1649 /* ERwin Builtin Trigger */
1650 /* Должность имеет Сотрудник on child update set null */
1651 /* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Должность"
1652 CHILD_OWNER="", CHILD_TABLE="Сотрудник"
1653 P2C_VERB_PHRASE="имеет", C2P_VERB_PHRASE="принадлежит",
1654 FK_CONSTRAINT="R_3", FK_COLUMNS="Код_Должности__OwnerEntitiy" */
1655 IF
1656 /* %ChildFK(" OR",UPDATE) */
1657 UPDATE(Код_Должности__OwnerEntitiy)
1658 BEGIN
1659 UPDATE Сотрудник
1660 SET
1661 /* %SetFK(Сотрудник,NULL) */
1662 Сотрудник.Код_Должности__OwnerEntitiy = NULL
1663 FROM Сотрудник,inserted
1664 WHERE
1665 /* %JoinPKPK(Сотрудник,inserted," = "," AND") */
1666 Сотрудник.Код_Сотрудника__OwnerEntitiy = inserted.Код_Сотрудника__OwnerEntitiy AND
1667
1668 NOT EXISTS (
1669 SELECT * FROM Должность
1670 WHERE
1671 /* %JoinFKPK(inserted,Должность," = "," AND") */
1672 inserted.Код_Должности__OwnerEntitiy = Должность.Код_Должности__OwnerEntitiy
1673 )
1674 END
1675
1676
1677 /* ERwin Builtin Trigger */
1678 RETURN
1679ERROR:
1680 raiserror @errno @errmsg
1681 rollback transaction
1682END
1683
1684go