|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Здравствуйте ! Мне нужно написать триггер, запрещающий добавлять записи в таблицу , если в ссылочной нет соответствующего значения . Т.е. у меня есть таблица countries там есть поле partoftheworld, она связана с таблицей partoftheworld, где есть как раз значения. Я вот не могу поеять, как сделать сравнение соответсвия и как сделать запрет( Не судите строго, пишу триггер первый раз ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 21:46 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Urcaserem, А триггер зачем? Это делается внешним ключом. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 22:33 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
miksoft, Вообще да, я поставила внешний ключ) но задача стоит научиться так делать, видимо(т.е. писать триггеры) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 22:54 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Urcaserem miksoft, Вообще да, я поставила внешний ключ) но задача стоит научиться так делать, видимо(т.е. писать триггеры) погуглите примеры, там все довольно хорошо рассказывают. Например, Модератор: ссылка удалена ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 23:20 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 23:26 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
сюда тоже надо заглянуть https://dev.mysql.com/doc/refman/8.0/en/signal.html ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 03:25 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Urcaserem как сделать сравнение соответсвия Тупо запрос в референсную таблицу на получение количества записей со вставляемым значением. Если одна - всё в порядке. Если ноль - нет соответствующей записи, и тогда надо сгенерировать ошибку (SIGNAL), которая обломает процесс вставки. Если более одного (что странно, ибо референсное поле просто обязано быть уникальным) - то имеет место логическое повреждение информации, нужно опять-таки обломать вставку, но с другим кодом и сообщением об ошибке. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 07:48 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
miksoft,Alex_Ustinov,Akina знаете в чём прикол? я не понимаю точно что такое ссылочная таблица вроде как это таблица на которую ссылается поля другой таблицы. типа в аксессе можно сделать так , чтобы в поле было падающее меню из значений столбца какой-либо другой таблицы(мастер подстановок). и там между таблицами появлялась простая ниточка без единичек там или знаков бесконечности. воооот теперь вопрос : как это сделать в май скл воркбенч? ну я сделала таблицу по типу такой. я вот не поняла, нужно ли их связывать (ниточка) или нет? связью 1 ко многим или это связь произойдёт если создашь триггер. лично я склоняюсь ко 2 варианту... жду оценки экспертов.. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 18:41 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Akina, оооо, круто. типа такого? Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 19:00 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Akina, третий вариант не буду рассматривать у меня уникальные значения. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 19:02 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Urcaserem Akina, оооо, круто. типа такого? Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 20:36 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
Akina, блинский блин, туплю Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
там ошибка( 22:34:06 insert countries (FormOfGoverment_idFormOfGoverment,name,area,establish,PartOfTheWorld) values ('6','Finland','0338.1','1917-12-06','Europ') Error Code: 1054. Unknown column 'inserted' in 'where clause' 0.046 sec ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 22:39 |
|
Триггер нужно написать первый раз это делаю(
|
|||
---|---|---|---|
#18+
наугад, так как ничего не знаю о полях в ваших таблицах Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2020, 01:48 |
|
|
start [/forum/topic.php?fid=47&msg=40006429&tid=1828356]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
129ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 255ms |
0 / 0 |