#! /usr/local/bin/perl -w
use strict;
use DBI();

my ($ref,$mesg,$dbm,$query,$xname,$sname,$sth,$rows);


$xname="Paweek";
$sname="Junior";

# Krok A:
# nawizanie poczenia z baz danych
$dbm=DBI->connect("DBI:mysql:database=people;host=localhost",'webserv')
	or die "Nie mona nawiza poczenia z baz danych peolpe";

#wstawienie kilku wierszy do tabeli - ilustracja funkcji qq()
$query=qq(insert into people (xname,sname) values ('$xname','$sname'));

# Krok B: wykonanie zapytania
$dbm->do($query);

$xname="Pawe";
#Demonstracja dziaania symboli zastpczych w zapytaniach MySQL
$query=qq(select xname, sname from people where xname like "%$xname%");
$sth=$dbm->prepare($query) or die "Bd konstrukcji zapytania $query: $!";

# Krok C: przetwarzanie zbioru wynikowego
# $! to zmienna interpretera Perl, odwoujca si do biecego systemowego komunikatu o bdzie
$sth->execute($query,$xname);
$rows=$sth->rows;
print qq(Znaleziono $rows osoby o imionach pasujcych do wzorca '$xname'\n);
while ($ref=$sth->fetchrow_hashref)
	{
	print qq($ref->{'xname'} $ref->{'sname'}\n);
	}
# Krok D: zwolnienie pamici uchwytu zbioru wynikowego
$sth->finish;
# Krok E: zamknicie poczenia z baz danych
$dbm->disconnect;
