MySQL & mSQL



Msql.pm API - часть 13


Пример

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 возвращает типы колонок данных, содержащихся в описателе команды. При вызове в скалярном контексте функция возвращает ссылку на массив. Сам по себе этот массив не очень интересен для большинства пользователей (в текущей реализации это массив целых чисел), однако эти значения можно сравнивать со встроенными значениями, определенными в Msql.pm, такими как &Msql: : CHAR_TYPE и &Msql: : INT_TYPE. Один из путей использования этих данных - создание массива с читаемыми названиями, соответствующими предустановленным типам. Этот метод был продемонстрирован в главе 10 «Perl». Другой способ показан ниже.

Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $output = $db->query("select name, date from myothertable");




Содержание  Назад  Вперед