Use Bookmarks
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Использование закладок
| true | — | набор рядов поддерживает закладки. Закладки рядов находятся в колонке 0. |
| false | — | набор рядов не поддерживает закладки и является последовательным. |
|
Bookmark Type
Тип: VT_I4
R/W: R/W
| По умолчанию: | DBPROPVAL_BMK_NUMERIC |
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Fetch Backwards
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Обратная выборка
|
Scroll Backwards
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Обратное позиционирование
|
Hold Rows
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Удержание рядов. См. документацию по OLE DB
|
Literal Bookmarks
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Literal Row Identity
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Maximum Open Rows
Тип: VT_I4
R/W: R
IBProvider v1, v2, v3.
Максимальное число рядов, которое может вернуть набор. Неограничено.
|
Maximum Rows
Тип: VT_I4
R/W: R
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Memory Usage
Тип: VT_I2
R/W: R/W
IBProvider v1, v2, v3.
Объем памяти, который может использовать результирующее множество
| 0 | — | в памяти удерживается максимум 32 ряда |
| 1..99 | — | не более указанного процента доступной памяти |
| 100.. | — | не более указанного объема в КВ |
Для хранения результатов запросов IBProvider использует временные файлы с 64-битный доступом и собственным механизмом кэширования наиболее часто используемых рядов. Это позволяет ему обрабатывать любые объемы информации. При установке этого значения необходимо принимать во внимание, что внутренний кэш IBProvider'a является вторичным по отношению к кэшу операционной системы. По соображениям эффективности, наборы схемы всегда храняться в памяти.
См. свойство инициализации провайдера
rowset_vm_using.
|
Bookmarks Ordered
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IAccessor
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IColumnsInfo
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IColumnsInfo2
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IColumnsRowset
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IRowset
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IRowsetInfo
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IRowsetLocate
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Произвольный доступ к результирующему множеству (набору рядов)
|
IRowsetScroll
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
ISupportErrorInfo
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE
|
IConvertType
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
ISequentialStream
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Quick Restart
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
| True | — | IRowset::RestartPosition не требует повторного выполнения запроса. |
| False | — | IRowset::RestartPosition будет повторно выполнять запрос. |
|
Unique Rows
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Hidden Column Count
Тип: VT_I4
R/W: R
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Row Threading Model
Тип: VT_I4
R/W: R
| Значение: | DBPROPVAL_RT_FREETHREAD|DBPROPVAL_RT_APTMTTHREAD |
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Access Order
Тип: VT_I4
R/W: R
| Значение: | DBPROPVAL_AO_RANDOM |
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Blocking Storage Objects
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
IRowsetChange
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Включение поддержки интерфейса IRowsetChange для обновления набора рядов. Установка свойств IRowsetUpdate и Append-Only Rowset в true автоматически устанавливает это свойство в true.
|
IRowsetUpdate
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Включение поддержки интерфейса IRowsetUpdate для выполнения отложенных обновлений набора рядов. Установка этого свойства в true автоматически включает поддержку интерфейса IRowsetChange.
|
Updatability
Тип: VT_I4
R/W: R/W
IBProvider v2, v3.
Битовая маска, определяющая поддерживаемые операции обновления данных. Допускается установка в 0 или комбинирование следующих значений:
| 1 | — | Поддержка изменения рядов (IRowsetChange::SetData) |
| 2 | — | Поддержка удаления рядов (IRowsetChange::DeleteRows) |
| 4 | — | Поддержка вставки новых рядов (IRowsetChange::InsertRow) |
|
Append-Only Rowset
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Если это свойство установлено в true, то открываемый набор рядов изначально будет пустым. При этом свойство " IRowsetChange" будет автоматически установлено в true и будет разрешен метод IRowsetChange::InsertRow (свойство " Updatability")
|
Immobile Rows
Тип: VT_BOOL
R/W: R
IBProvider v2, v3.
Новые ряды добавляются в конец множества.
|
Others' Inserts Visible
Тип: VT_BOOL
R/W: R
IBProvider v2, v3.
Набор рядов, в общем случае, не видит новые ряды созданные другими пользователями.
|
Others' Changes Visible
Тип: VT_BOOL
R/W: R
IBProvider v2, v3.
Набор рядов, в общем случае, не видит изменения производимые другими пользователями.
|
Own Inserts Visible
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Если это свойство установить в false, то новые ряды набора будут просто передаваться в базу данных и не будут доступны для дальнейшей работы. В режиме отложенных изменений (" IRowsetUpdate"= true) значение этого свойства игнорируется, и набор всегда видит собственные новые ряды.
|
Own Changes Visible
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Если это свойство установить в false, то все изменения/удаления рядов будут передаваться в базу данных напрямую, и не будут отображаться в наборе. В режиме отложенных изменений (" IRowsetUpdate"= true) значение этого свойства игнорируется, и набор всегда видит собственные изменения рядов.
|
Server Data on Insert
Тип: VT_BOOL
R/W: R
IBProvider v2, v3.
Набор не перечитывает данные нового ряда после вставки в базу данных.
|
Remove Deleted Rows
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Если это свойство установить в false, то провайдер не будет уничтожать ряды, для которых выполнена операция удаления. В этом случае вы будете продолжать их выбирать, однако любой метод выборки данных этого ряда будет возвращать DB_E_DELETEDROW. Обратите внимание, что при удалении ряда ожидающего вставку, набор всегда выполняет его уничтожение. Поэтому, после удаления таких рядов они становятся полностью не видимыми для механизма навигации по множеству.
|
Return Pending Inserts
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Установив это свойство в false, вы не сможете выбирать ряды ожидающие вставку. Ряд станет видимым после его вставки в базу данных ( IRowsetUpdate::Update)
|
Change Inserted Rows
Тип: VT_BOOL
R/W: R/W
IBProvider v2, v3.
Разрешение модифицирования новых рядов набора. Если это свойство установить в false, то набор рядов не будет допускать изменение и удаление новых рядов. При попытке изменить новый ряд будет возвращаться код ошибки - DB_E_NEWLYINSERTED. При удалении нового ряда будет возвращаться статус DBROWSTATUS_E_NEWLYINSERTED. Обратите внимание, что если ряд ожидает вставку (режим отложенных изменений), то вы можете его изменять и удалять. Ограничение будет включено только после фиксации этого ряда (IRowsetUpdate::Update)
|
Delay Storage Object Updates
Тип: VT_BOOL
R/W: R
IBProvider v2, v3.
Провайдер всегда кэширует новые значения BLOB полей. Смотри также описание организации локального хранилища используемого в обновляемом наборе рядов.
|
Preserve on Commit
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
В общем случае, набор рядов не будут функционировать после подтверждения транзакции. Обратите внимание, что вы не имеете возможность явного управления автоматическими транзакциями. Поэтому, если используется автоматическая транзакция, то она будет активной до полного освобождения набора рядов.
|
Preserve on Abort
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
В общем случае, набор рядов не будут функционировать после отката транзакции.
См. свойство набора рядов
Preserve on Commit
|
IRowsetResynch
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IRowsetResynch".
|
IConnectionPointContainer
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IConnectionPointContainer".
|
IRowsetFind
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IRowsetFind".
|
IRowsetRefresh
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IRowsetRefresh".
|
Lock Mode
Тип: VT_I4
R/W: R
| Значение: | DBPROPVAL_LM_NONE |
IBProvider v1, v2, v3.
Набор рядов не требует каких-либо блокировок рядов для успешного обновления. Сбой может произойти только в случае конфликтов при конкурентном доступе к данным.
|
IRowsetIndex
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IRowsetIndex".
|
IRowsetCurrentIndex
Тип: VT_BOOL
R/W: R
IBProvider v1, v2, v3.
Текущая версия провайдера не поддерживает интерфейс
" IRowsetCurrentIndex".
|
Skip Row Count Results
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
См. документацию по OLE DB
|
Prepare Stmt
Тип: VT_BSTR
R/W: R
IBProvider v1, v2, v3.
Преобразованный текст запроса, используемый для передачи серверу.
|
array_vt_type
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Конвертация элементов массивов в VT совместимые типы.
См. свойство набора рядов
array_type
См. свойство инициализации провайдера
array_vt_type
|
truncate_char
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Разрешение усечения хвостовых пробелов типа CHAR
См. свойство инициализации провайдера
truncate_char
|
support_odbc_query
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Поддержка запросов, содержащих ODBC литеры.
См. свойство инициализации провайдера
support_odbc_query
|
force_prepare_stmt
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Принудительная подготовка запросов и формирование описаний параметров при установке текста запроса.
См. свойство инициализации провайдера
force_prepare_stmt
|
ignore_unprepare
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Разрешение на игнорирование команды UnPrepare SQL-запроса.
См. свойство инициализации провайдера
ignore_unprepare
|
std_exec_sp
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Способ интерпретации запроса "exec SP"
| True | — | Как "execute procedure SP". Результат будет доступен через OUT-параметры. |
| False | — | Как "select * from SP". Результат будет доступен в виде результирующего множества. |
[for ibp v1/v2] Независимо от значения этого свойства Schema Rowset будет описывать хранимые процедуры как возвращающие OUT-параметры. [for ibp v3] Это свойство устарело. Используйте ado_exec_sp.
См. свойство инициализации провайдера
std_exec_sp
См. свойство инициализации провайдера
ado_exec_sp
См. свойство набора рядов
ado_exec_sp
|
odbc_call_sp
Тип: VT_I4
R/W: R/W
IBProvider v1, v2, v3.
Способ выполнения ODBC-запроса "{?=call SP(...)}"
| 0 | — | Как "select * from SP". Результат будет доступен в виде результирующего множества. |
| 1 | — | Как "execute procedure SP". Результат будет доступен через OUT-параметры. |
| 2 | — | [ibp v3] провайдер самостоятельно определяет способ запуска хранимой процедуры. |
См. свойство инициализации провайдера
odbc_call_sp
См. свойство инициализации провайдера
schema_sp_params
|
clear_param_info
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Разрешение очищать список описаний параметров при установке в команду нового текста запроса. Если клиент сначала устанавливает описания параметров, а потом текст запроса - то описания будут потеряны. В этом случае могут возникнуть или ошибка выполнения команды, или дополнительные расходы на автоматическое формирование списка описаний параметров (
См. свойство инициализации провайдера
clear_param_info
|
auto_param_describe
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Если при выполнении параметризованного запроса пользователь не установил описания параметров, то провайдер автоматически сформирует их, выполнив запрос к серверу.
|
force_param_describe
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Неявное получение описаний параметров и их использование для передачи значений параметров с теми типами, которые ожидает сервер базы данных. В этом режиме можно, например, не различать параметры для обычных строковых полей иBLOB-полей ( adChar, adVarChar, adLongVarChar) - провайдер выполнит все необходимые преобразования. Обратите внимание, что Client Cursor Engine может интерпретировать длинные строки (например, VARCHAR(32000)) как BLOB поле и работать с ним соответствующим (некорректным) способом. Накладные расходы - одно обращение к серверу при первом(!) выполнении команды. Если вы работаете c IBProvider через ADODB без использования Client Cursor Engine и точно указываете типы параметров, то это свойство лучше установить в False.
См. свойство инициализации провайдера
force_param_describe
|
named_param_prefix
Тип: VT_BSTR
R/W: R/W
IBProvider v1, v2, v3.
Префикс именованных параметров в тексте запроса. Провайдер допускает использование префиксов, состоящих из нескольких символов, например "##". Если этому свойство присвоить пустую строку, то провайдер не будет поддерживать именованные параметры. Эта функциональность нужна при выполнении DDL запросов (in IBP v1, v2).
См. свойство инициализации провайдера
named_param_prefix
|
query_pool_size
Тип: VT_I2
R/W: R/W
IBProvider v2, v3.
Определение максимального числа подготовленных запросов используемых для управления обновляемым множеством. При выполнении любого запроса (как служебного, так и на модификацию данных) сначала проверяется наличие аналогичного запроса в пуле. Если такой запрос уже выполнялся, то он будет использован повторно. Если нет, то будет переподготовлен самый "старый" запрос. Запретить использование пула запросов можно установив это свойство в 0.
|
auto_insert_field_rule
Тип: VT_I2
R/W: R/W
IBProvider v2, v3.
Правило формирования SQL запроса (INSERT INTO ...) на вставку нового ряда в автоматическом режиме управления обновляемым множеством. Допустимыми значениями являются:
| 0 | — | Перечислять все колонки. Не инициализированные колонки передаются как NULL. |
| 1 | — | Перечислять только колонки, для которых пользователь установил значение. Провайдер вернет ошибку, если нет хотя бы одной инициализированной колонки. |
| 2 | — | Перечислять NOT NULL колонки. Провайдер вернет ошибку, если все колонки нового ряда IS NULL. |
Обратите внимание, что если таблица, в которую производится вставка нового ряда, содержит колонки с DEFAULT значениями, то это свойство нужно установить в 1. Минимизацию сетевого трафика обеспечивают значения 1 и 2 этого свойства.
|
auto_update_field_rule
Тип: VT_I2
R/W: R/W
IBProvider v2, v3.
Правило формирования SQL запроса (UPDATE ...) на обновление ряда в автоматическом режиме управления обновляемым множеством. Допустимыми значениями являются:
| 0 | — | Перечислять все колонки. |
| 1 | — | Перечислять только измененные колонки. |
Минимизацию сетевого трафика обеспечивает значение 1 этого свойства.
|
auto_gen_key_rule
Тип: VT_BSTR
R/W: R/W
IBProvider v2, v3.
Список правил генерации ключей при вставке нового ряда в автоматическом режиме. auto_gen_key_rule = <gen_key_rule>{;<gen_key_rule>}
<gen_key_rule> = {GEN | GEN_N | GEN_NI }.GeneratorName.<column_id>
<column_id> = {<aliase_column_name> | <full_column_name>}
<aliase_column_name> = название колонки в результирующем множестве
<full_columns_name> = BaseTableName.BaseColumnName
| GEN | — | Всегда генерировать новое значение колонки |
| GEN_N | — | Генерировать новое значение, если в значение колонки IS NULL |
| GEN_NI | — | Генерировать новой значение, если колонка не была инициализирована |
Используя эти правила, набор рядов может автоматически использовать генераторы для определения значений ключевых (и не только) колонок. При определении названий генератора, таблицы и колонки можно использовать квотированные имена. Пример. Если в таблице MY_TABLE есть колонка ID, то вы можете определить следующие правила генерации ключей с использованием генератора GEN_ID_MY_TABLE:
| auto_gen_key_rule | = | GEN_NI.GEN_ID_MY_TABLE.ID |
| auto_gen_key_rule | = | GEN_NI.GEN_ID_MY_TABLE .MY_TABLE.ID |
Eсли пользователь не устанавливал какое-либо значение в колонку ID, то провайдер использует генератор GEN_ID_MY_TABLE для присвоения уникального значения.
|
modify_trans_type
Тип: VT_I2
R/W: R/W
IBProvider v2, v3.
Определение транзакции, используемой для операций записи изменений в базу данных. Допустимыми значениями являются:
| 0 | — | Если для чтения данных набора рядов используется автоматическая транзакция, то для записи изменений будет использоваться отдельная короткая транзакция (см.2). Если пользователь явно стартовал транзакцию на выборку данных, то именно она и будет использоваться для обновления данных (см.1) |
| 1 | — | Использование основной транзакции, в которой производится выборка данных. |
| 2 | — | Использование отдельной короткой транзакции. В этом режиме можно избежать DEAD блокировки, но отсутствуют какие-либо гарантии обеспечения целостности базы данных. |
Обратите внимание, что автоматическая транзакция фиксируется при закрытии набора рядов. Поэтому, установив это свойство в 1 и открыв набор рядов в автоматической транзакции, вы не сможете увидеть изменения в базе данных до тех пор пока не освободите набор рядов.
|
modify_trans_level
Тип: VT_I4
R/W: R/W
IBProvider v2, v3.
Уровень изоляции отдельной транзакции, в которой производится модификация базы данных. Допустимые значения совпадают со значениями свойства "
auto_commit_level".
|
delete_sql
Тип: VT_BSTR
R/W: R/W
IBProvider v2, v3.
SQL запросы выполняемые при удалении ряда. Несколько SQL перечисляются через точку с запятой. В тексте запросов допускается использование только OLD параметров. Пример.delete_sql = DELETE FROM MY_TABLE WHERE ID=:OLD.ID См. документацию по управляемому режиму обновляемых наборов рядов.
|
insert_sql
Тип: VT_BSTR
R/W: R/W
IBProvider v2, v3.
SQL запросы выполняемые при вставке нового ряда. Несколько SQL запросов перечисляются через точку с запятой. В тексте запросов допускается использование NEW, GEN, GEN_N, GEN_NI параметров. Пример.insert_sql = INSERT INTO MY_TABLE (ID,NAME)VALUES(:GEN.GEN_ID_MY_TABLE.ID,:NEW.NAME) См. документацию по управляемому режиму обновляемых наборов рядов.
|
update_sql
Тип: VT_BSTR
R/W: R/W
IBProvider v2, v3.
SQL запросы выполняемые при изменении ряда. Несколько SQL запросов перечисляются через точку запятой. В тексте запросов допускается использование NEW и OLD параметров. Пример.update_sql = UPDATE MY_TABLESET ID=:NEW.ID, NAME=:NEW.NAME WHERE ID=:OLD.ID См. документацию по управляемому режиму обновляемых наборов рядов.
|
rowset_vm_using
Тип: VT_I4
R/W: R/W
IBProvider v1, v2, v3.
Объем памяти в килобайтах под кэш результирующего множества, начиная с которого будет использоваться менеджер памяти на базе VirtualAlloc/VirtualFree и SEH. При отрицательном значении этого свойства будет всегда использоваться менеджер памяти на базе HeapAlloc/HeapFree. См. также:
свойство инициализации провайдера
rowset_vm_using
,
Memory Usage.
|
new! ado_exec_sp
Тип: VT_I4
R/W: R/W
IBProvider v3.
Способ интерпретации запроса "exec SP". Допустимые значения:
| 0 | — | Трансляция запроса "exec SP" в "select * from SP" |
| 1 | — | Трансляция запроса "exec SP" в "execute procedure SP" |
| 2 | — | Провайдер самостоятельно определяет способ запуска хранимой процедуры |
Это свойство замещает устаревшее свойство std_exec_sp
См. свойство инициализации провайдера
ado_exec_sp
См. свойство инициализации провайдера
schema_sp_params
|
exec_sp_named_param
Тип: VT_BOOL
R/W: R/W
IBProvider v1, v2, v3.
Способ представления параметров при трансляции запроса "exec SP". Допустимые значения:
| True | — | Трансляция в запрос с именованными параметрами: "execute procedure SP (:param1, param2 ...)". |
| False | — | Трансляция в запрос с неименованными параметрами: "execute procedure SP (?,? ...)". |
См. свойство инициализации провайдера
exec_sp_named_param.
|
new! ignore_err_param
Тип: VT_I4
R/W: R/W
IBProvider v1, v2, v3.
Битовая маска игнорирования ошибок в параметрах команды.
См. свойство инициализации провайдера
ignore_err_param
|
new! support_square_delim_name
Тип: VT_I4
R/W: R/W
IBProvider v1, v2, v3.
Поддержка имен объектов БД в квадратных скобках
| 0 | — | Поддержка отключена. |
| 1 | — | Обрабатываются все квадратные скобки. |
| 2 | — | [v3] Парсер пытается различать имена объектов и индексы массивов. |
Парсер квадратных скобок игнорирует комментарии и текстовые значения
См. свойство инициализации провайдера
support_square_delim_name
|
new! array_type
Тип: VT_I4
R/W: R/W
| По умолчанию: | Наследует свойство инициализации array_type |
IBProvider v3.
Правила представления колонок и параметров, содержащих массивы
| 0 | — | Колонки и параметры с оригинальным типом элементов массива. |
| 1 | — | Используется VARIANT-совместимый тип элементов массива. |
| 2 | — | Используется массив вариантов. VBScript-совместимый режим. |
| 17 | — | Подобно "1", но массив будет помещен в VARIANT. |
| 18 | — | Подобно "2", но массив будет помещен в VARIANT. VBScript-совместимый режим. |
Это свойство замещает
array_vt_type
См. свойство инициализации провайдера
array_type
|