Типы данных СУБД ЛИНТЕР
| Тип данных | Описание | |
|---|---|---|
| LDT_INTEGER | Целые числа | |
| LDT_BIGINT | Длинное целое | |
| LDT_SMALLINT | Короткое целое | |
| LDT_REAL | Вещественные числа | |
| LDT_DOUBLE | Вещественное двойной точности | |
| LDT_NUMERIC, LDT_DECIMAL | Числа с фиксированной точкой1) | |
| LDT_DATE | Дата-время | |
| LDT_BLOB | BLOB-данные | |
| LDT_CHAR | Символьные строки фиксированной длины | |
| LDT_VARCHAR | Символьные строки переменной длины | |
| LDT_BYTE | Байтовые строки фиксированной длины | |
| LDT_VARBYTE | Байтовые строки переменной длины | |
| LDT_BOOLEAN | Логическое значение | |
| LDT_NCHAR | Unicode-строки фиксированной длины2) | |
| LDT_NVARCHAR | Unicode-строки переменной длины2) | |
| LDT_EXTFILE | Внешние файлы |
1)Данные типа NUMERIC (DECIMAL) выдаются в виде строк. Это влияет на результаты жесткого сравнения (с помощью ==) и на результаты функции gettype(). Чтобы получать этот тип данных в виде LDT_DOUBLE, необходимо в файл настроек php (php.ini) добавить следующие строки:
[linter] linter.decimal_as_double = On
(это работает для php версии >= 4.1.0)
См. пример demo9.php в подкаталоге samples/php установочного каталога СУБД ЛИНТЕР.
2)При работе со строками типа NCHAR и NVARCHAR необходимо помнить, что соответствующая этому типу данных кодировка в PHP называется UCS-2. При этом порядок байтов зависит от архитектуры компьютера и его нужно задавать самостоятельно (UCS-2LE или UCS-2BE). Для работы с различными кодировками в PHP можно использовать, например, модуль mbstrings:
if ( !extension_loaded("mbstring") ) dl("php_mbstring.dll")
Linter_Exec_Direct ($con, "select nchar_string from table1;");
$data = Linter_Get_Data_Array ($con);
$value = mb_convert_encoding ($data[0], "CP1251", "UCS-2LE");
См. пример demo7.php в подкаталоге samples/php установочного каталога СУБД ЛИНТЕР.