SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » RDB$CHECK_CONSTRAINTS (рудиментарные записи, или нет?)
RDB$CHECK_CONSTRAINTS [сообщение #4075] Wed, 17 January 2024 15:52 Переход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
Здравствуйте, ВСЕ!

Причёсывая структуры залез в RDB$CHECK_CONSTRAINTS.
Увидел странное, или непонятное (для меня).
В RDB$TRIGGER_NAME присутствуют значения, коих нет в таблице RDB$TRIGGERS.
Кроме того, оные значения уж больно похожи на наименования полей пользовательских таблиц.
Например:
RDB$CONSTRAINT_NAME  RDB$TRIGGER_NAME
===================  ================
INTEG_1              KODTOV
INTEG_2              EDIZM
INTEG_3              NUMREG
INTEG_4              KODTOV
INTEG_5              EDIZM
INTEG_6              STATUS
INTEG_7              NUMREG
INTEG_8              CODE
INTEG_9              STORE
INTEG_10             EDIZM
INTEG_11             NUMREG
INTEG_12             CODE
INTEG_13             NAME
INTEG_14             DATEIZM
INTEG_15             NUMIZM
Раскройте мне глаза. Чтоб у меня прояснилось.
Re: RDB$CHECK_CONSTRAINTS [сообщение #4076 является ответом на сообщение #4075] Wed, 17 January 2024 17:04 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
Я даже больше скажу! ©
SQL> SELECT
CON>   COUNT(DISTINCT T.Rdb$trigger_name) AS REAL_TRIGGERS,
CON>   COUNT(*) AS TOTAL_COUNT
CON> FROM Rdb$check_constraints C
CON> LEFT JOIN Rdb$triggers T ON T.Rdb$trigger_name = C.Rdb$trigger_name;

REAL_TRIGGERS  TOTAL_COUNT 
============= ============ 
          194         4672 
Re: RDB$CHECK_CONSTRAINTS [сообщение #4077 является ответом на сообщение #4076] Wed, 17 January 2024 18:44 Переход к предыдущему сообщениюПереход к следующему сообщению
sim_84 в настоящее время не в онлайне  sim_84
Сообщений: 329
Зарегистрирован: June 2022
Senior Member
Туда попадают не только check, но и not null поля. Для них там не имя триггера
Re: RDB$CHECK_CONSTRAINTS [сообщение #4078 является ответом на сообщение #4076] Wed, 17 January 2024 18:57 Переход к предыдущему сообщениюПереход к следующему сообщению
dimitr в настоящее время не в онлайне  dimitr
Сообщений: 18
Зарегистрирован: July 2022
Junior Member
Для NOT NULL констрейнтов нет соответствующих триггеров, но записи в RDB$CHECK_CONSTRAINTS есть. Для них в RDB$TRIGGER_NAME пишется имя поля. Наследие борманов Smile
Re: RDB$CHECK_CONSTRAINTS [сообщение #4083 является ответом на сообщение #4078] Thu, 18 January 2024 11:57 Переход к предыдущему сообщениюПереход к следующему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
dimitr
. Для NOT NULL констрейнтов нет соответствующих триггеров, но записи в RDB$CHECK_CONSTRAINTS есть. Для них в RDB$TRIGGER_NAME пишется имя поля.

а толку от этих записей, если там поля без указания таблиц.

dimitr
. Наследие борманов Smile
всю малину перепортили, гады! ©

зы: их дропать-то можно, или чревато?
Re: RDB$CHECK_CONSTRAINTS [сообщение #4084 является ответом на сообщение #4083] Thu, 18 January 2024 12:27 Переход к предыдущему сообщениюПереход к следующему сообщению
dimitr в настоящее время не в онлайне  dimitr
Сообщений: 18
Зарегистрирован: July 2022
Junior Member
МП писал(а) Thu, 18 January 2024 11:57
а толку от этих записей, если там поля без указания таблиц
дык еще в RDB$RELATION_CONSTRAINTS запись есть Smile

Цитата:
зы: их дропать-то можно, или чревато?
а у тебя они висячие от далекого прошлого что-ли?
Re: RDB$CHECK_CONSTRAINTS [сообщение #4085 является ответом на сообщение #4084] Thu, 18 January 2024 12:57 Переход к предыдущему сообщению
МП в настоящее время не в онлайне  МП
Сообщений: 887
Зарегистрирован: August 2022
Географическое положение: бурятский тун...
Senior Member
dimitr
Цитата:
зы: их дропать-то можно, или чревато?
а у тебя они висячие от далекого прошлого что-ли?
если помнишь, у нас база постепенно мигрировала от IB4.2 (под SCO) к нонешнему Firebird-у (под Linux) со всеми промежуточными бекап-ресторами.
без пересоздания.
Предыдущая тема: Посчитать возраст
Следующая тема: FB3 Долгий shutdown базы с одновременной нагрузкой антивирусом Касперского
Переход к форуму:
  


Текущее время: Fri Nov 15 05:35:15 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00793 секунд