mssql_field_length

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_lengthПолучить длину поля

Внимание

Эта функция УДАЛЕНА в PHP 7.0.0.

Есть следующие альтернативы:

Описание

int mssql_field_length ( resource $result [, int $offset = -1 ] )

Возвращает длину поля с индексом offset в result.

Список параметров

result

Результирующий набор, полученный после запуска mssql_query().

offset

Индекс поля. Первое поле имеет индекс 0. Если пропущено, то используется текущее поле.

Возвращаемые значения

Возвращает длину поля по указанному индексу, или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Пример mssql_field_length()

<?php
// Соединяемся с MSSQL и выбираем базу
mssql_connect('MANGO\SQLEXPRESS''sa''phpfi');
mssql_select_db('php');

// Делаем выборку
$query mssql_query('SELECT [name], [age] FROM [php].[dbo].[persons]');

// Печатаем длину поля
echo 'Поле \'age\' имеет размер ' mssql_field_length($query1);

// Очищаем результат
mssql_free_result($query);
?>

Результатом выполнения данного примера будет что-то подобное:

Поле 'age' имеет размер 4

Примечания

Замечание: Замечание для пользователей Windows

В связи с ограничениями, лежащими в основе API используемого PHP (MS DBLib C API), длина поля VARCHAR ограничена 255. Если вам нужно манипулировать более длинными строками, используйте поле TEXT.

Смотрите также

add a note add a note

User Contributed Notes 2 notes

up
0
zz(lost dot childz at gmail dot com)
10 years ago
there are same problem with VARBINARY, if you are forced to use existing database with such fields you can do it like this:

SELECT CAST(master.dbo.fn_varbintohexstr(VARBINARYFIELD) AS TEXT) FROM table;
up
0
Anonymous
12 years ago
You can also work around this limitation with the following:

   -- for example, with MyVarCharField VARCHAR(1000)
   SELECT CAST(MyVarCharField AS TEXT) FROM MyTable
To Top