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

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

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

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
Msql:: Statement: :isnotnull возвращает список булевых значений, указывающих 
для каждой из содержащихся в описателе команды колонки, была ли она определена 
как 'NOT NULL'. При вызове в скалярном контексте функция возвращает ссылку на 
массив.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my Soutput = $db->query("select * from mydata");
my @names = $output->name;
my @not_null = $output->isnotnull;
for (0..$#not_null) {
print "$names[$_]не может быть null\n" 
if $not_null[$_]; }
Msql::Statement::isnum
@numbers = $statement_handle->isnum;
Msql: : Statement: : isnum возвращает список булевых значений, указывающих для 
каждой из содержащихся в описателе команды колонки, является ли она числовой. 
При вызове в скалярном контексте функция возвращает ссылку на массив. 
«Числовая» означает тип, например, 'INT' или 'REAL', но не число в поле типа 
'CHAR' или 'TEXT'.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $output = $dD->query("select name, date from myothertable");
print "Name является числом"
if $output->isnum->[0]; 
print "Date является числом" 
if $output->isnum->[1];
Msql::Statement::isprikey
@primary_key = $statement_handle->isprikey;
Msq1::Statement: :isprikey возвращает список булевых значений, указывающих для 
каждой из содержащихся в описателе команды колонки, является ли она первичным 
ключом. При вызове в скалярном контексте функция возвращает ссылку на массив. 
Эта функция всегда возвращает список, состоящий из нулей, при соединении с 
сервером mSQL 2, поскольку в mSQL 2 не используются первичные ключи. Однако она 
может быть полезна с серверами mSQL 1, поскольку в них реализованы первичные 
ключи.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $output-= $db->query("select * from mytable");
my @prikeys = $output->isprikey;
my $number_of_prikeys = scalar @prikeys;
print "В этом описателе команды $number_of_prikeys первичных ключей. ",
"В запросе участвует не меньшее число различных таблиц, поскольку ".
"в каждой таблице может быть только один первичный ключ\n";
Msql::Statement::length
@lengths = $statement_handle->length;
Msql::Statement::length возвращает список максимально возможных длин для 
колонок, содержащихся в описателе команды. Это значения, определенные как 
максимальные при создании таблицы. При вызове в скалярном контексте функция 
возвращает ссылку на массив.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $output = $db->query("select- * from mytable");
my @types = $output->type;
my @lengths = $output->length;
for (0..$#types) {
if ($types[$_] == &Msql: :CHAR_TYPE and $lengths[$_] > 1000000) { 
print "В этой таблице у вас есть одно о-очень большое поле CHAR!\";
} }
Msql::Statement::listindices
Pindices = $statement_handle->listindices;
Msql: : Statement: :listindices возвращает индексы, связанные с какими-либо 
полями в описателе команды. Поскольку функция непосредственно ищет имена полей, 
она полезна только для имен, возвращаемых Msql: : listf ields . Если индексы не 
обнаружены, возвращается неопределенное значение undef. Эту функцию можно 
использовать только с серверами mSQL 2.0 или последующих версий.
Пример
use Msql;
my $db = Msql->connect;
$db->selectdb('mydata');
my $mytable_fields = $db->listfields('mytable');
my ©indices = $mytable_fields->listindices;
print "B 'mytable' есть следующие индексы: " . join(", ",@indices) .
 
<<-[Весь Текст]
Страница: из 157
 <<-