|
Программирование >> Программный интерфейс приложений
числовых столбцов под точностью понимается ширина отображения на экране, а для строковых - максимальная длина столбца. $sth->{SCALE); Ссылка на массив значений, отражающих масштаб каждого столбца. Понятие масштаб для интерфейса DBI означает то же, что и для ODBC, в то время как в MySQL это значение называется числом десятичных знаков для столбцов значений с плавающей запятой. Для других столбцов значение масштаба равно 0. $sth->{Statement}; Текст запроса, связанного с дескриптором $sth. Именно этот текст считывается методом prepare!) До замены маркеров. $stli->{TYPE}; Ссылка на массив значений, отражающих числовой тип каждого столбца. Специальные атрибуты дескрипторов операторов MySQL Большинство описанных в этом разделе атрибутов дескрипторов операторов следует рассматривать как доступные только для чтения. Обрабатывать их следует только после вызова метода executed). Исключение из этих двух правил составляют лишь атрибуты mysql store result и mysql use result. Драйвер dbd: :mysql предоставляет возможность управления стилем обработки результируюшего набора, используемого сценарием. Атрибуты дескрипторов операторов mysql store result и mysql use result определяют вид обработки результирующего набора API-функций mysql store result() и mysql use result() языка С. Более детально об этих функциях и отличиях между ними рассказывается в приложении Е, Профаммный интерфейс приложений С . В интерфейсе DBI по умолчанию используется функция mysql store result (), однако пользователь имеет возможность активизировать атрибут mysql use result, который указывает интерфейсу DBI применять функцию mysql use result (). Установить этот атрибут следует после вызова метода prepare (), но до execute (): $sth = $dbh->prepare (...); $sth->{mysql use result} = 1; $sth->execute О; Некоторые специальные атрибуты MySQL бьши доступны в старых версиях драйвера dbd-. -.mysql, однако в настоящее время исключены из него и заменены более новыми формами. Такие исключенные афибуты и их современные заменители представлены в табл. Ж.2. При работе с немного устаревшей версией драйвера dbd::mysql, который не поддерживает новые атрибуты, попытайтесь воспользоваться исключенными сейчас формами (либо же обновите версию драйвера). Обратите внимание также, что insert id является атрибутом дескриптора оператора, в то время как его новая форма, mysqlinsertid, - ат-р(ибутом дескриптора базы данных. Таблица Ж.2. Исключенные атрибуты MySQL Исключенный атрибут Новый атрибут
$sth->lmysql is blob}; Ссылка на массив значений, отражающих, относится ли каждый столбец к типу BLOB. $sth->{ mysql is key }; Ссьшка на массив значений, отражающих, является ли каждьш столбец частью неуникального ключа. $sth->{ mysql is not null}; Ссьшка на массив значений, отражающих, может ли каждый столбец иметь значение null. Ложное возращенное значение атрибута указывает, что столбец может включать значение null, Содержащаяся внутри этого атрибута информация прямо противоположна информации атрибута nullable. $sth->{mysql is num}; Ссылка на массив значений, отражающих, относится ли каждый столбец к числовому типу. $sth->{inysql is pri key}; Ссьшка на массив значений, отражающих, является ли каждый столбец частью ключа primary key. $sth->{ mysql max length}; Ссьшка на массив значений, отражающих реальную максимальную длину значений столбцов результирующего набора. $sth->{mysql store result}; Если атрибут mysql store result активизирован (установлен равным 1), результируюище наборы извлекаются из сервера MySQL с помощью функции языка С mysql store result (), а не С помощью mysql use result (). Более детально об этих функциях и отличиях между ними рассказывается в приложении Е, Профаммный интерфейс приложений С . Если планируется установить атрибут mysql store result, осуществите эту установку после вызова метода prepare () и до вызова execute() . $sth->{mysql table}; Ссылка на массив значений, отра жающих имя таблиц, из которых считывается каждый столбец. В качестве имени таблицы для рассчитываемого столбца выступает пустая строка. $sth->{mysql type}; Ссылка на массив значений, отражающих количество типов MySQL для каждого столбца результирующего набора. $sth->{mysql type name} Ссылка на массив значений, отражающих название типа MySQL для каждого столбца результирующего набора. $sth->{mysql use result}; Если атрибут mysql use result активизирован (установлен равным 1), результирующие наборы извлекаются из сервера MySQL с помощью функции языка С mysql use result(), а не с помощью mysql store result(). Более детально об этих функциях и отличиях между ними рассказывается в приложении Е, Профаммный интерфейс приложений С . Обратите внимание, что использование этого атрибута может сделать недействительными некоторые другие афибуты, такие, например, как mysql max length. Этот афибут также не позволяет использовать метод rows (), хотя в любом случае подсчитывать число строк лучще всего после полной выборки. Если планируется установить афибут mysql use result, осуществите эту установку после вызова метода prepare () и до вызова execute(). Переменные среды интерфейса DBI Интерфейс DBI исследует несколько переменных среды, перечисленных в табл. Ж.З. Все эти переменные, за исключением DBI TRACE, используются методом connect О. Переменная DBI TRACE используется методом trace (). Таблица Ж.З. Переменные среды DBI Название Значение DBI DRIVER Имя драйвера уровня DBD ( mysql для MySQL) DBI DSN Имя источника данных DBi PASS Пароль DBi TRACE Уровень трассировки и/или файл вывода протоколируемой ин- формации DBI USER Имя пользователя
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |