Spec-Zone.ru › Sequelize 5
Статический публичный обзор
public

DataTypes: *

Удобный класс, содержащий часто используемые типы данных.

public

Deferrable: *

Коллекция свойств, связанных с отложенными ограничениями.

public

IndexHints: *

Перечисление подсказок индекса, которые следует использовать в mysql для запросов с подсказками индекса

public

Op: {"eq": *, "ne": *, "gte": *, "gt": *, "lte": *, "lt": *, "not": *, "is": *, "in": *, "notIn": *, "like": *, "notLike": *, "iLike": *, "notILike": *, "startsWith": *, "endsWith": *, "substring": *, "regexp": *, "notRegexp": *, "iRegexp": *, "notIRegexp": *, "between": *, "notBetween": *, "overlap": *, "contains": *, "contained": *, "adjacent": *, "strictLeft": *, "strictRight": *, "noExtendRight": *, "noExtendLeft": *, "and": *, "or": *, "any": *, "all": *, "values": *, "col": *, "placeholder": *, "join": *}

Символы операторов, которые следует использовать при запросе данных

public

QueryTypes: *

Перечисление типов запросов, используемых sequelize.query

public

TableHints: *

Перечисление подсказок таблицы, которые следует использовать в mssql для запросов с подсказками таблицы

Статический публичный

public DataTypes: * source

Удобный класс, содержащий часто используемые типы данных. Типы данных используются при определении новой модели с помощью Sequelize.define, например так:

sequelize.define('model', {
  column: DataTypes.INTEGER
})

При определении модели вы можете так же легко передать строку как тип, но часто использование типов, определенных здесь, выгодно. Например, использование DataTypes.BLOB, означает, что столбец будет возвращен как экземпляр Buffer при извлечении с помощью sequelize.

Для указания длины типа данных можно вызвать его как функцию: INTEGER(2)

Некоторые типы данных имеют специальные свойства, к которым можно получить доступ для изменения типа данных. Например, для получения целого числа без знака с заполнением нулями можно сделать DataTypes.INTEGER.UNSIGNED.ZEROFILL. Порядок доступа к свойствам не имеет значения, поэтому DataTypes.INTEGER.ZEROFILL.UNSIGNED также подходит.

  • Все числовые типы (INTEGER, BIGINT, FLOAT, DOUBLE, REAL, DECIMAL) экспонируют свойства UNSIGNED и ZEROFILL
  • Типы CHAR и STRING экспонируют свойство BINARY

Три из предоставленных здесь значений (NOW, UUIDV1 и UUIDV4) являются специальными значениями по умолчанию, которые не следует использовать для определения типов. Вместо этого они используются как сокращения для определения значений по умолчанию. Например, для получения поля uuid со значением по умолчанию, сгенерированным в соответствии со стандартом UUID v1:

sequelize.define('model', {
  uuid: {
    type: DataTypes.UUID,
    defaultValue: DataTypes.UUIDV1,
    primaryKey: true
  }
})

Возможно, в некоторых случаях вам потребуется сгенерировать свой UUID, соответствующий другому алгоритму. Это достигается с помощью свойства defaultValue также, но вместо указания одного из предоставленных типов UUID, вы возвращаете значение из функции.

sequelize.define('model', {
  uuid: {
    type: DataTypes.UUID,
    defaultValue: function() {
      return generateMyId()
    },
    primaryKey: true
  }
})

public Deferrable: * source

Коллекция свойств, связанных с отложенными ограничениями. Она может быть использована для того, чтобы сделать ограничения внешнего ключа отложенными и для установки ограничений в рамках транзакции. Это поддерживается только в PostgreSQL.

Внешние ключи можно настроить следующим образом. Это создаст внешний ключ, который будет проверять ограничения немедленно при вставке данных.

sequelize.define('Model', {
  foreign_id: {
    type: Sequelize.INTEGER,
    references: {
      model: OtherModel,
      key: 'id',
      deferrable: Sequelize.Deferrable.INITIALLY_IMMEDIATE
    }
  }
});

Ограничения можно настроить в транзакции следующим образом. Это вызовет запрос после начала транзакции и установит ограничения, которые будут проверяться в самом конце транзакции.

sequelize.transaction({
  deferrable: Sequelize.Deferrable.SET_DEFERRED
});

Свойства:

Имя Тип Атрибут Описание
INITIALLY_DEFERRED *

Отложить проверки ограничений до конца транзакций.

INITIALLY_IMMEDIATE *

Сразу активировать проверки ограничений.

NOT *

Установить ограничения не отложенными. Это значение по умолчанию в PostgreSQL, и это делает невозможным динамическое откладывание ограничений внутри транзакции.

SET_DEFERRED *
SET_IMMEDIATE *

public IndexHints: * source

Перечисление подсказок индекса, которые следует использовать в mysql для запросов с подсказками индекса

Свойства:

Имя Тип Атрибут Описание
USE *
FORCE *
IGNORE *
END_OF_DOCUMENT_MARKER

public Op: {"eq": *, "ne": *, "gte": *, "gt": *, "lte": *, "lt": *, "not": *, "is": *, "in": *, "notIn": *, "like": *, "notLike": *, "iLike": *, "notILike": *, "startsWith": *, "endsWith": *, "substring": *, "regexp": *, "notRegexp": *, "iRegexp": *, "notIRegexp": *, "between": *, "notBetween": *, "overlap": *, "contains": *, "contained": *, "adjacent": *, "strictLeft": *, "strictRight": *, "noExtendRight": *, "noExtendLeft": *, "and": *, "or": *, "any": *, "all": *, "values": *, "col": *, "placeholder": *, "join": *} source

Операторы для использования при запросе данных

Свойства:

Имя Тип Атрибут Описание
eq *
ne *
gte *
gt *
lte *
lt *
not *
is *
in *
notIn *
like *
notLike *
iLike *
notILike *
startsWith *
endsWith *
substring *
regexp *
notRegexp *
iRegexp *
notIRegexp *
between *
notBetween *
overlap *
contains *
contained *
adjacent *
strictLeft *
strictRight *
noExtendRight *
noExtendLeft *
and *
or *
any *
all *
values *
col *
placeholder *
join *

См.:

  • Model#where

public QueryTypes: * source

Перечисление типов запросов, используемых sequelize.query

Свойства:

Имя Тип Атрибут Описание
SELECT *
INSERT *
UPDATE *
BULKUPDATE *
BULKDELETE *
DELETE *
UPSERT *
VERSION *
SHOWTABLES *
SHOWINDEXES *
DESCRIBE *
RAW *
FOREIGNKEYS *
SHOWCONSTRAINTS *

См.:

  • Sequelize#query

public TableHints: * source

Перечисление подсказок для таблиц, используемых в mssql для запросов с подсказками для таблиц

Свойства:

Имя Тип Атрибут Описание
NOLOCK *
READUNCOMMITTED *
UPDLOCK *
REPEATABLEREAD *
SERIALIZABLE *
READCOMMITTED *
TABLOCK *
TABLOCKX *
PAGLOCK *
ROWLOCK *
NOWAIT *
READPAST *
XLOCK *
SNAPSHOT *
NOEXPAND *

Copyright © 2014–present Sequelize contributors
Licensed under the MIT License.
https://sequelize.org/v5/variable/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API