Справочник и примеры языка PHP

         

n Ho нас интересуют только



Пример

use DBI;

my @drivers = DBI->available_drivers;

print "Доступны следующие драйверы:\n" . join("\n",@drivers) . "\ n Ho нас интересуют только mSQL и mysql. :)\n";



Пример

use OBI;

my $db = DBI->connect('DBI:mSQL:mydata', undef,undef);
my $query = " SELECT name, date FROM myothertable";
my $myothertable_output = $db->prepare($query);

my ($name, $date);



$myothertable_output->bind_col(1,\$name,undef);

$myothertable_output»bind_col(2, \$date, undef);

# Теперь $name и Sdate привязаны к соответствующим полям выходных данных.

$myothertable_output->execute;

while ($myothertable_output->fetch) {

# Каждый раз $name и $date автоматически изменяются.

print "Имя: $name Дата: $date\n"; }





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);
my $query = " SELECT name, date FROM myothertable";
my $myothertable_oulput = $db->prepare($query);

my ($name, $date);

$mynfhertable_outpul->bind_columns(undef, \($name, $daLe));

# $name и $date теперь привязаны к соответствующим полям в выдаче,

$myothertable_output->execute;

while ($myothertable_output->fetch)
{

# $name и $date каждый раз автоматически изменяются.

print "Имя: $name Дата: $date\n";
}





Пример

use DBI;

my $db = DBI->connect('DBD:msql:mydata','me','mypass');

my Sstatement = $db->prepare(

" SELECT name, date FROM myothertable WHERE name like ? OR name like ?");

$statement->bind_param(1,'J%','SQL_CHAR');

$statement->bind_param(2,'%oe%', { TYPE => &DBI::SQL_CHAR });

# Теперь команда будет такой:

# SELECT name, date FROM myothertable WHERE name like 'J%' or name like

'%oe%'





Пример

use DBI;

my $db1 = DBI->connect('DBI: mSQL:mydata',undef,undef);

# Теперь $db1 представляет соединение с базой данных 'mydata'на локальном

# сервере mSQL.

my $db2 = DBI->connect( 'DBI:mysql:mydata:myser-ver.com','me','mypassword');

# Теперь $db2 представляет соединение с базой данных 'mydata' сервера MySQL
# 'myserver.com' через порт по умолчанию.

# При соединении использовались имя пользователя 'те' и пароль 'mypassword'.
my $db3 = DBI->connect('DBI:mSQL:mydata',undef,undef, {

RaiseError => 1 });
# Теперь $db3 - такое же соединение, как $db1, за исключением того, что

# установлен атрибут 'RaiseError'.





Пример

use DBI;

my §msql_data_sources = DBI->data_sources('mSQL');
my @mysql_data_sources = DBI->data_sources('mysql');

# Должны быть установлены DBD::mSQL и DBO::mysql, иначе

# выполнение программы прекратится.

print "mSQL databases:\n" . join("\n",@msql_data_sources) , "\n\n";
print "MySQL databases:\n" . join("\n",@mysql_data_sources) . "\n\n";





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);

my $rows_affected = $db->do("UPDATE mytable SET name='Joe' WHERE name='Bob"');
print "$ rows_affected Joe заменены на Bob's\n";

my $rows_affected2 = $db->do("INSERT INTO mytable (name) VALUES (?)", {}, ("Sheldon's Cycle"));

# После заключения в кавычки и подстановки

# серверу базы данных посылается команда

#INSERT INTO mytable (name) VALUES ('Sheldon's Cycle')





Пример

use DBI;

my $db1 = DBI->connect( 'DBI:mSQL:mydata',undef,undef);

my $db2 = OBI->connect('DBI:mSQL:mydata2',undef,undef);

$db1->disconnect;

# Соединение ' mydata' разорвано. Соединение с 'mydata2'

# продолжает действовать.





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);

my Squery = " SELECT name, date FROM myothertable";

my $myothertable_output = $db->prepare($query);

$myothertable_output->execute;

print DBI::dump_results($myothertable_output);
# Вывести результаты в аккуратной таблице.

open(MYOTHERTABLE, ">>myothertable");

print DBI: :dump_results($iriyothertable_output,
undef,undef,undef,\*MYOTHERTABLE);

# Снова вывести результаты в файл 'myothertable,'.





Пример

use DBI;

my $db = DBI->connect('DBI:mysql:mydata',
'webuser','super_secret_squirrel');

# Этот запрос имеет синтаксическую ошибку...

my Soutput = $db->prepare('SLECT * from mydata');

$output->execute;

if (not $output) {

print "Error $DBI:err: $DBI:errstr\n"; }





Пример

Use DBI;

my $db = DBI->connect('DBI:mysql:mydata',
'wcbuscr','super_secret_squirrel');

my $error = $db->errstr;

warn(" Boj последняя ошибка DBI: $error");





Пример

use DBI;

my $db = DBI->connect('OBI:mSQL:mydata',undef,undef);
my $statement_handle = $db->prepare("SELECT * FROM mytable");
my $statement_handle2 = $db->prepare(" SELECT name, date FROM myothertable WHERE name like ?");

$statement_handle->execute;

# Выполнена первая команда.К значениям можно

# обращаться через описатель.

$statement_handle->execute("J%");

# Выполнена вторая команда следующего содержания:

# SELECT name, date FROM myothertable WHERE name like 'J%'





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata' ,undef,undef);

my $query = "SELECT name, date FROM myothertable";

my Soutput = $db->prepare($query);

$output->execute;

my $data = $output->fetchall_arrayref;

# Теперь $ data является ссылкой на массив массивов. Каждый элемент

# 'главного' массива сам является ссылкой на массив, содержащий строку данных.

print "Четвертой строкой данных в таблице является: " . $data->[3][1]. "\n";
# Элемент 3 'главного' массива является массивом, содержащим четвертую
# строку данных, # Элемент 1 этого массива является датой.





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);

my $query = " SELECT name, date FROM myothertable WHERE name LIKE 'Bob%'";

my $myothertable_output = $db->prepare($query);

$myothertable_output->execute;

my ($name, $date);

# Это первая строка из $myothertable_output.

($name, $date) = $myothertable_output->fetchrow_array;

# Это следующая строка...

($name, $date) = $myothertable_output->fetchrow_array;

# И еще одна...

my @name_and_date = $myothertable_output->fetchrow_array;

# и т.д.....





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata', undef, undef);

my $query = " SELECT name, date FROM myothertable WHERE name LIKE -Bob%'";

my $myothertable_output = $db->prepare($query);

$myothertable_output->execute;

my $name1 = $myothertable_output->fetch->[0]

# Это поле 'name' из первой строки данных,
my $date2 = $myothertable_output->fetch->[1]

# Это поле 'date' из второй строки данных.

my ($name3, $date3) = @{$myothertable_output->fetch};

# Это целиком третья строка данных.
$myothertable_output->fetch

# возвращает ссылку на массив. Можно 'преобразовать' ее в действительный

# массив, используя конструкцию @{}.





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);

my $query = "SELECT * FROM mytable";

my $mytable_output = $db->prepare($query);

$mytable_output->execute;

my %row1 = $mytable_ouput->fetchrow_hashref;
my @field_names = keys %row1;

# @ field_names содержит теперь имена всех полей в запросе.

# Это делается только один раз. Во всех следующих строках будут те же поля,
my @row1 = values %row1;





Пример

use DBI;

my $db = DBI->connect('DBI:mysql:mydata','me','mypassword');

my $query = "SELECT * FROM mytable";

my $mytable_output = $db->prepare($query);

$mytable_output->execute;

$mytable_output->finish;

# Теперь можно переназначить $ mytable_output или подготовить для него

# другую команду SQL.





Пример

use DBI;

my $db = DBI->connect('DBI:mysql:mydata','me','mypassword');

my @tables =.$db->func('„List-Tables');

# @ tables содержит теперь список таблиц в 'mydata'.





Пример

use DBI;

my $string = " Это очень, очень длинная строка, в которой много чего написано. ";

my$neat_string = OBI: :neat($string,14);
# Теперь $neat_string такая: 'Это очень, оче...





Пример

use DBI;

my @list = (' Bob', 'Joe', 'Frank');

my $neat_string = DBI::neat_list(\@list, 3);

# Теперь $ neat_string такая: 'Bob', 'Joe', 'Fra...





Пример

use DBI;

my $db = DBI->connect('DBI:mysql:mydata','me','mypassword');

my $statement_handle = $db->prepare('SELECT * FROM mytable');

# Теперь эта команда готова к выполнению.

My $statement_handle = $db->prepare(' SELECT name, date FROM myothertable WHERE name like ?');

# Эта команда будет готовя к выполнению после подстановки # с использованием функции DBI::bind_param.





Пример

use DBI;

my $db1 = DBI->connect('DBI:mSQL:mydata',undef,undef);
my $db2 = DBI->connect('DBI:mysql:myotherdata','me','mypassword');

my $string = "Sheldon's Cycle";

my $qs1 = $db1->quote($string);

# $qs1: 'Sheldon\'s Cycle' (включая наружные кавычки)
my $qs2 = $db2->quote($string);

# $qs2 : 'Sheldon's Cycle' (включая наружные кавычки)

# Теперь обе строки годятся для использования в командах для своих

# соответствующих серверов баз данных.





Пример

use DBI;

my $db = DBI->connect('DBI:mSQL:mydata',undef,undef);

my $query = " SELECT name, date FROM myothertable WHERE name='Bob'";

my $myothertable_output = $db->prepare($query);

$myothertable_output->execute;

my $rows = $myotnertable_output->rows;

print "В таблице 'myothertable' есть $rows строк 'Воb'\n";





Пример

Use OBI;

my $db = DBI->connect('DBI:mysql:mydata',
'webuser','super_secret_squirгеl');

my $sql_error = $db->state;

warn(" BoT последняя по времени ошибка DBI SQL: $sql_error");





Пример

use DBI;

my $db1 = DBI->connect('DBI:mysql:mydata',
'webuser','super_secret_squirrel');

my $db2 = DBI->connect('DBI:mSQL:myotnerdata',undef,undef);

DBI >trace(2);

# Включена трассировка для всех описателей на уровне 2.

$db2->trace(0);

# Отключена трассировка для $db2, но продолжает действовать для $db1

$db1->trace(2,'DBI.trace');

# Теперь включена трассировка для всех описателей на уровне 2, выдача

# посылается в файл 'DBI.trace'.





Пример

use DBI;

my $db = DBI->connect('mysql:mydata','me','mypassword');

$db->{RAISE_ERROR} = 1;

# Теперь любая ошибка DBI/DBD убьет программу.

my $statement_handle = $db->prepare('SELECT * FROM mytable');
$statement_handle->execute;

my @fields = @{$statement_handle->{NAME}};

# @ fields содержит теперь список с именами всех полей в 'mytable'.





Пример

use Msql;

# Соединение с сокетом Unix локального узла ' my $db = Msql->connect;

# Или...

# Соединение с узлом 'www.myserver.com' без указания, базы данных
mу $db = Msql->connect('www.myserver.com');

# Или...

# Соединение с сервером 'www.myserver.com' и выбор базы данных 'mydata'
mу $db = Msql->connect('www.myserver.com','mydata');





Пример

use Msql;

my $db = Msql->connect;

my $my_new_database = 'mynewdata';

my $result = $db->createdb($my_new_database);

die " База данных не создана!"
if $result == -1;

print "$my_new_database создана.\n";





Пример

use Msql;

my $db = Msql->connect('www.myserver.com','mydata');

my $database = $db->database;

print " Здесь должно быть выведено 'mydata': $database\n";





Пример

use Msql;

my $db = Msql->connect;
my $result = $db->dropdb('mydata');
die " Команда не выполнена!"
if result == -1;
print "'mydata' потеряна навсегда.\n";





Пример

use Msql;

my $db = Msql->connect;

my Serror = $db->errmsg;

warn(" Вот последняя по времени ошибка mSQL: $error");





Пример

use Msql;

my $db = Msql->connect;

my ($step, $value) = $db->getsequenceinfo('mytable');

die " B mytable не задана последовательность" if not $step;

print "B mytable есть последовательность со значением $value и шагом

$step\n";





Пример

use Msql;

my $ijh - Msql->connect( 'www.myserver.com');

my $host = $db->host;

print "Вероятно, вы видите 'www.myserver.com': $host\n";





Пример

use Msql;

my $db = Msql->connect;

my @databases = $db->listdbs;

print " Имеющиеся базы данных:\n\n" . join("\n",@databases);





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $fields = $db->listfields('mytable');

warn ("Проблемы с 'mytable-': " . $db->errmsg)
if (not $fields);
# $ fields явяется ссылкой на все поля в таблице 'mytable'.
print "mytable содержит следующие поля:\n";
print $fields->as_string;





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $mytable_fields = $db->listfields('mytable');

my @indices = $mytable_fields->listindices;

# Я знаю имена всех индексов.

foreach (@indices) {

my $index_info_handle = $db->listindex('mytable',$_);
my (@index_info) = $index_info_handle->fetchcol(0);
my $type_of_index = shift(@index_info);

# $ type_of_index содержит теперь тип индекса (вероятно, 'avl'),
# a @index_info содержит теперь список полей в индексе.





Пример

use Msql;

my $db = Msql->connect;

my @tables = $db->listtables;
my $database = $db->database;
print "B $ database есть следующие таблицы:\n\n" join("\n",@tables);





Пример

use Msql;

my $db = Msql->connect; $db->selectdb('mydata');

my $query1 = "SELECT * FROM mytable";

my $query2 = " SELECT name, date FROM myothertable WHERE name LIKE 'Bob%'";
my $query3 = "UPDATE myothertable SET name='Bob' WHERE name='Joe'";

my $mytable_output = $db->query($query1);

my $myothertable_output = $db->query($query2);

my $myothertable_input = $db->query($query3);

# $mytable_output содержит результаты запроса к 'mytable'

# $myothertable_output содержит результаты запроса к 'myothertable'

print "Обновление 'myothertable' повлияло на имена в $myothertable_input

\n";





Пример

use Msql;

# Отключить сообщения об ошибках. Действует, только если сценарий
# запущен с '-w'.

$Msql::QUIET = 1;

# Выполняем многословную часть...

# Снова включаем сообщения об ошибках. $Msql::QUIET = undef;





Пример

use Msql;

my $db = Msql->connect;

my $string = "Это ' (одинарная кавычка)";
my $qstring = $db->quote($string);

print qq% Tenepb значение строки "'Это\\' (одинарная кавычка)'" : $qstring\n%;





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

# Выбранной базой данных является 'mydata'
if ($db->database ne 'mydata') {

wаrn('Базу данных выбрать не удалось!'); }

$db->selectdb('myotherdata');

# Теперь выбрана база данных 'myotherdata'





Пример

use Msql;

my $db = Msql->connect;

# Пора закрывать базу данных...

my $result = $db->shutdown;

die "Команда не выполнена!" if $result — -1;

print "Сервер остановлен.\n";





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $query = "SELECT * FROM mytable";

my $mytable_output = $db->query($query);

print "Моя таблица:\n", $mytable_output->as_string;

# Выводится вся таблица в гораздо более приемлемом виде,
# чем в примере Msql:[Statement:ifetchhash.





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my Squery = "SELECT name, date FROM myothertable";

my $myothertable_output = $db->query($query);

my @names = $myothertable_output->fetchcol(0);
my @dates = $myothertable_output->fetchcol(1);

# Теперь указатель установлен в конце таблицы.

$myothertable_output->dataseek(0);

# Теперь указатель установлен на начало таблицы,

print "Это первая строка данных: ", $myothertable_output->fetchrow, "\n".





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $query = " SELECT name, date FROM myothertable WHERE name LIKE 'Bob%'";

my $myothertable_output = $db->query($query);

my @names = $myothertable_output->fetchcor(0);

# @names содержит теперь все имена.

my @dates = $myothertable_output->fetchcol(1);

# ©dates содержит теперь все даты.

for (0..$#names) {

print "Row $_: $names[$_], $dates[$_]\n"; }





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $query = "SELECT * FROM mytable";

my $mytable_output = $db->query($query);

my %first_data_row = $mytable_output->fetchhash;

my @fields = keys %first_data_row;

# @ fields содержит теперь имена всех полей. В результате, фактически нет

# нужды использовать Msql::listfields, поскольку ее данные и многие

If другие можно получить через описатель команды, возвращаемый

# Msql::query.

my (%data_row);

print ]oin("", ©fields), "\n';

print "-"x70;

print join("", values(%first_data_row);

print join("", values(%data_row)) while %data_row = $mytable_output-

>fetchhash;

# Таким образом распечатывается вся таблица, хотя и в невыравненном

# формате.





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $query1 = "SELECT * FROM mytable";

my $query2 = " SELECT name, date FROM myothertable WHERE name LIKE

'Bob%'";

my $mytable_output = $db->query($query1);

my $myothertable_output = $db->query($query2);

my $i = 0;

# Чтение строк данных будет продолжаться,

# пока их больше не останется.

while (my(@mytable_rows)=$mytable_output->fetcnrow) {
print "Строка ",$i++,": ".join(', ',@mytable_rows)."\n";
# Если неизвестна структура таблицы 'mytable',
# нельзя узнать число элементов в @mytable_rows или их порядок.

}

my (Sname, $date);

# Это первая строка данных в $myotrertable_output.

($name, $datc) = $myothertaPle_output->fetchrow;

# Это следующая строка...

($name, $date) = $myothertable_output->fetchrow;

# И еще одна...

my @name_and_date = $myothertable_output->fetchrbw;

# и т.д....





Пример

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[$_]; }





Пример

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];





Пример

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";





Пример

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!\";

} }





Пример

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) .

"\n;



Пример

use Msql;

$db = Msql->connect;

$db->selectdb('mydata');

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

print " Самое длинное имя имеет длину " . $ouput->maxlength->[0] . " символов,\n";





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

my $output = $db->query("select * from mytable");

my @column_names = $output->names;

# Теперь @column_names - список колонок 'mytable'





Пример

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";





Пример

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";





Пример

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')





Пример

use Msql;

my $db = Msql->connect;

$db->selectdb('mydata');

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

my ($name_type, $date_type) = $output->type;

for ($name_type) {

$_ eq &Msql: :CHAR_TYPE and do {
print ''name является CHAR';
last;
} $_ eq &Msql::INT_TYPE and do {
print 'name является INT'; last; } # и т.д....

}

# повторить для $date_type





Пример

use Msql;

my $db = Msql->connect;

my $sock = $db->sock;

print " Я подключен к сокету $sock.\n";





Пример

use Msql;

%types = (

'CHAR' => &Msql::GHAR_TYPE, 'INT' => &Msql::INT_TYPE, 'REAL' => &Msql::REAL_TYPE, 'SYSVAR' => &Msql::SYSVAR_TYPE, 'TIME' => &Msql::TIME_TYPE, 'MONEY' => &Msql::MONEY_TYPE, 'UINT' => &Msql::UINT_TYPE, 'TEXT' => &Msql::TEXT_TYPE, 'NULL' => &Msql::NULL_TYPE, 'DATE' => &Msql::DATE_TYPE, 'IDENT' => &Msql::IDENT_TYPE, 'IDX' => &Msql::IDX_TYPE,

);

# $types{'CHAR'} является теперь легкодоступным псевдонимом для

# &Msql::CHAR_TYPE. Наличие значений в % types дает доступ ко всем
# удобным функциям работы с хешами, такими как keys() и values().





Пример

use Msql;

print " Вы используете Msql.pm версии $Msql::VERSION.\n";





Пример

use Mysql;

$db = Mysql->connect(undef,'mydata','webuser1, 'super_secret_squirrel');

# Теперь описатель базы данных соединен с локальным сервером MySQL и
# использует базу данных 'mydata1.

# Использовано имя пользователя 'webuser' для

# соединения с паролем 'super_secret_squirrel'.





Пример

use Mysql;

my $db = Mysql->connect(undef,'mydata','webuser', 'super_secret_squirrel');

# В этом запросе есть синтаксическая ошибка...
my $output = $db->query( 'SELECT * from mydata');

if (not $output) {

print "Ошибка " . $output->errno . ": " . $output->errfnsg . "\n"; }





Пример

use Mysql;

my $db = Mysql->connect(undef, 'mydata');

my Soutput = $db->query(" SELECT name, data from myothertable");

if ($output->type->[0] = &Mysql::FIELD_TYPE_STRING) {

print "Name является STRING.\n"; }





Пример

use Mysql;

my $db = Mysql->connect(undef,'mydata');

my $output = $db->query(" UPDATE mytable set name='bob' where

name='joe'");

print $output->affectedrows . " строк обновлено.\n";





Пример

use Mysql;

$db = Mysql->connect(undef,'mydata');

my $output = $db->query("LOAD DATA INFILE 'mydata.dat' INTO TABLE mytable");

my $info = $output->info($output);
print « Результат работы LOAD DATA: $info\n»;





Пример

use Mysql;

my $db = Mysql->connect(undef,'mydata');

my $output = $db->query(

" INSERT into mytable (id, name, date) VALUES ('','bob', 'today')";

my $new_id = $output->insertid;

print "Bob был введен с ID, равным $new_id.\n";





Пример

use Mysql;

$db = Mysql->connect(undef,'mydata');

my $output = $db->query(' SELECT name, data from myothertable');

if ($output->isblob->[0]) {

print "Name является полем BLOB.\n"; }
else {

print "Name не является полем BLOB.\n"; }





Пример

use Mysql;

my $db = Mysql->connect(undef,'mydata');

my $outpuf= $db->query(" UPDATE mytable set name='joe' where

name='bob' ");

# $output является описателем команды.

Содержание раздела