GD CONTACT

Материал из GedeminWiki
(Различия между версиями)
Перейти к: навигация, поиск
(См. также)
 
(не показаны 3 промежуточные версии 1 участника)
Строка 1: Строка 1:
 +
 +
<source lang="sql">
 
   CREATE TABLE gd_contact
 
   CREATE TABLE gd_contact
 
   (
 
   (
Строка 66: Строка 68:
 
   
 
   
 
   CREATE ASC INDEX gd_x_contact_name ON gd_contact (name);
 
   CREATE ASC INDEX gd_x_contact_name ON gd_contact (name);
 +
</source>
 +
 +
====См. также====
  
 +
* [[Связи таблиц справочника контактов]]
 +
* [[GD_PEOPLE]]
  
 
[[Category:База данных]]
 
[[Category:База данных]]

Текущая версия на 13:59, 4 января 2022

  CREATE TABLE gd_contact
  (
    id            dintkey,
 
    /* Левая (верхняя) граница. Одновременно может использоваться */
    /* как второй уникальный индекс, если группы и список */
    /* находятся в разных таблицах */
    lb            dlb,
    rb            drb,          /* Правая (нижняя) граница */
 
    parent        dparent,
    contacttype   daddrcontacttype, /* 0 - папка, 1 - группа, 2 - человек, 3 - клиент, 4 - подразделение, 5 - банк        */
    name          dname,        /* Імя для паказу                                                           */
    address       dtext60,      /* Адрэс                                                                    */
    district      dtext20,
    city          dtext20,      /* Горад                                                                    */
    region        dtext20,      /* Вобласць                                                                 */
    ZIP           dtext20,      /* Індэкс                                                                   */
    country       dtext20,      /* Краіна                                                                   */
    placekey      dforeignkey,
    note          dblobtext80_1251, /* Камэнтар                                                                 */
    externalkey   dforeignkey,
    email         dtext60,
    url           dtext40,
    pobox         dtext40,
    phone         dtext40,
    fax           dtext40,
 
    editorkey     dforeignkey,
    editiondate   deditiondate,
 
    afull         dsecurity,
    achag         dsecurity,
    aview         dsecurity,
 
    disabled      ddisabled,
    reserved      dreserved
  );
 
  ALTER TABLE gd_contact ADD CONSTRAINT gd_pk_contact
    PRIMARY KEY (id);
 
  /* калі выдаляецца бацькоўскі кантакт, выдаляем і ўсіх дзяцей */
  ALTER TABLE gd_contact ADD CONSTRAINT gd_fk_contract_parent
    FOREIGN KEY (parent) REFERENCES gd_contact(id)
    ON UPDATE CASCADE
    ON DELETE CASCADE;
 
  ALTER TABLE gd_contact ADD CONSTRAINT gd_fk_contact_placekey
    FOREIGN KEY (placekey) REFERENCES gd_place (id)
    ON UPDATE CASCADE;
 
  ALTER TABLE gd_contact ADD CONSTRAINT gd_chk_contact_contacttype
    CHECK(contacttype IN (0, 1, 2, 3, 4, 5, 100, 101, 102, 103));
 
  ALTER TABLE gd_contact ADD CONSTRAINT gd_chk_contact_parent
    CHECK((contacttype IN (0, 1)) OR (NOT (parent IS NULL)));
 
  ALTER TABLE gd_user ADD CONSTRAINT gd_fk_user_contactkey
    FOREIGN KEY (contactkey) REFERENCES gd_contact (id)
    ON UPDATE CASCADE;
 
  ALTER TABLE gd_contact ADD CONSTRAINT gd_fk_contact_editorkey
    FOREIGN KEY (editorkey) REFERENCES gd_contact(id) 
    ON UPDATE CASCADE;
 
  CREATE ASC INDEX gd_x_contact_name ON gd_contact (name);

[править] См. также

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты