| fields
| string
|
Поля типа в формате: { имя поля : "тип данных", ... }
Поля можно перечислить через запятую если создается несколько типов данных за один запрос: { имя поля : "тип данных", ... }, { имя поля : "тип данных", ... }, ...
Имя поля любое кроме зарезервированных имен: id
Типы данных:
| Название типа
| Описание типа
|
| Базовые типы данных
|
| boolean
|
|
| byte
|
|
| short
|
|
| integer
|
|
| long
|
|
| float
|
|
| double
|
|
| char
|
|
| string
| Текстовый тип данных, по умолчанию максимум 255 символов.
|
| string(N)
| Текстовый тип данных, может содержать максимум N символов, где N любое целое число от 1 до 10240.
|
| text
| Текстовый тип данных, может содержать максимум 65000 символов.
|
| mtext
| Текстовый тип данных, может содержать максимум 16000000 символов.
|
| list
| Коллекция (список) объектов типа string.
|
| list<type>
| Коллекция (список) объектов определенного типа, где type - название типа данных.
|
| set
| Коллекция (набор) уникальных объектов типа string.
|
| set<type>
| Коллекция (набор) уникальных объектов определенного типа, где type - название типа данных.
|
| map
| Набор объектов парами ключ/значение типа string.
|
| map<type, type>
| Набор объектов парами ключ/значение определенного типа, где type - название типа данных.
|
|
Дата и время
По умолчанию свойства данных типов содержат время создания объекта по Гринвичу.
|
| time
| HH:MM:SS
|
| date
| YYYY-MM-DD
|
| datetime
| YYYY-MM-DD HH:MM:SS
|
| timestamp
| YYYY-MM-DD HH:MM:SS
|
| year
| YYYY
|
| millisec
| Время в миллисекундах, которое прошло с 1 января 1970 года. Также известно как unix time.
|
|
Специальные типы данных
Поля данных типов заполняются платформой автоматически при создании/обновлении объекта. Поля можно использовать в запросах по критериям. Запись в них запрещена.
|
| user
| Тип данных пользователь. Поля данного типа содержат идентификатор пользователя (uid) создавшего/обновившего объект (для гостей uid = 0).
|
| signature
| Тип данных подпись устройства. Поля данного типа содержат подпись устройства создавшего/обновившего объект.
|
|
Комплексные типы данных
|
|
Созданные типы данных можно использовать для создания комплексных типов данных. Например
DefineType(appid, session, "SimpleType", { PropB : "string" });
DefineType(appid, session, "ComplexType", { PropA : "int", Simple : "SimpleType" });
В результате получится следующий тип данных:
ComplexType : {
PropA : "int",
Simple : {
PropB : "string"
}
}
Метод CreateObject(..., "ComplexType") кроме создания объекта типа ComplexType создаст объект типа SimpleType в другой таблице. В свойстве Simple будет содержаться id созданного объекта типа SimpleType.
Методы выборки GetObject, GetObjects, GetObjectsByCriteria, GetProperty для поля Simple вернут индекс (id) объекта. Если в требуется вернуть сам объект, а не него индекс, в параметре eager (данный параметр содержат все методы выборки) указывается имя свойства для которого вернется объект.
|
|
| unique
| string
|
Уникальные поля типа в формате: { fields : [ "имя поля", ... ] }, { ... }
Примеры:
| field
| { fields : [ "field" ] }
|
| field1 AND field2
| { fields : [ "field1", "field2" ] }
|
| field1 OR field2
| { fields : [ "field1" ] }, { fields : [ "field2" ] }
|
| (field1 AND field2) OR (field3 AND field4)
| { fields : [ "field1", "field2" ] }, { fields : [ "field3", "field4" ] }
|
|