Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
"\n;
Msql::Statement::maxlength
@max_lengths = $statement_handle->maxlength; '
Msql::Statement: :maxlength возвращает список фактических максимальных размеров 
всех полей таблицы. При вызове в скалярном контексте функция возвращает ссылку 
на массив. Поскольку сервер mSQL прямо не сообщает эти данные, она реализована 
путем чтения всей таблицы и поиска максимального значения для каждого поля. 
Поэтому в mSQL эта функция может потребовать много ресурсов, если запрос 
возвращает большой объем данных.
Пример
use Msql;
$db = Msql->connect;
$db->selectdb('mydata');
my Soutput = $db->query('select name, date from myothertable');
print "Самое длинное имя имеет длину " . $ouput->maxlength->[0] . " символов,
\n";
Msql::Statement::name
@column_names = $statement_handle->name;
Msql:: Statement:: name возвращает имена колонок данных, содержащихся в 
описателе команды. При вызове в скалярном контексте функция возвращает ссылку 
на массив. Как и для Msql::Statement::table , скалярное значение этого списка 
(в противоположность значению функции при вызове в скалярном контексте) 
совпадает со значением Msql::Statement::numfields
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $output = $db->query("select * from mytable");
my @column_names = $output->names;
# Теперь @column_names - список колонок 'mytable'
Msql::Statement::numfields
$number_of_fields = $statement_handle->numfields;
Msql:: Statement: : numf ields возвращает число полей в каждой строке 
результирующих данных, содержащихся в описателе команды. Во всех выходных 
данных есть хотя бы одно поле, поэтому данная функция возвращает положительное 
число для всех определенных описателей команд.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $output = $db->query("select * from mytable");
my $numfields = $output->numfields;
my $numrows = $output->numrows;
print "В каждой строке таблицы 'mytable' $numfields полей \n";
print "Всего имеется Snumrows строк данных. Поэтому 'mytable'\n";
print "содержит" . ($numfields*$numrows) . " элементов данных.\n";
Msql::Statement::numrows
$number_of_rows = $statement_handle->numrows;
Msql: : Statement: : numrows возвращает число строк, содержащихся в описателе 
команды. Для описателя, который не может содержать строк, например, 
возвращаемого Msql: :listfields , функция возвращает строку 'N/A.' Если 
описатель может содержать строки, но их нет - например, он возвращен SELECT, 
для которого не найдено соответствия, -функция возвращает 0.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my Soutput = $db->query("select * from mytable");
my $numrows = '$output->numrows;
print "B 'mytable' содержится $numrows строк данных\n";
Msql::Statement::table
@tables = $statement_handle->table;
Msql: :Statement: :table возвращает список таблиц, связанных с колонками данных,
 содержащимися в описателе команды. (См. выше в Msql: : Statement: : isnum 
пример использования ссылки на массив.) Даже если запрос использовал только 
одну таблицу, для каждой колонки есть один элемент. Побочным эффектом является 
то, что скалярное значение массива, возвращаемого $statement_handle->table , 
совпадает со значением $statement_handle->numfields .
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my Soutput = $db->query('select myothertable. name, myothertable.date,
mythirdtable. name from myothertable, mythirdtable where myothertable. name
= mythirdtable. name');
my @tables = $output->table;
# @tables содержит теперь ('myothertable', 'myothertable', 'mythirdtable')
Msql::Statement::type
@column_types = $statement_handle->type;
Msql: : Statement: : type возвращает типы колонок данных, содержащихся в 
 
<<-[Весь Текст]
Страница: из 157
 <<-