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

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

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

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
Пример 10-2. Программа CGI tableshow.cgi выводит список всех таблиц в базе 
данных
#!/usr/bin/perl -w
use strict;
use CGI qw(:standard);
use CGI::Carp;
# Использовать модуль Msql.pm use DBI; CGI::use_named_parameters(1);
my ($db);
my $output = new CGI;
$db = param('db')'or die("He указана база данных!");
# Connect to the requested server.
my $dbh = DBI->connect("DBI:mysql:$db;$server", undef, undef);
# Если не существует $dbh, значит, попытка соединения с сервером 
# базы данных не удалась. Возможно, сервер не запущен,
# или не существует указанной базы данных, if (not $dbh) {
print header, start_html('title'=>"Данные по $host => $db", 
'BGCOLOR'=>'white');
print <$host 

$db

Попытка соединения не удалась по следующей причине:
$DBI::errstr END_OF_HTML exit(0); } print header, start_html('title'=>"Данные по $host => $db", 'BGCOLOR'=>'white'); print <$host

$db

<р> Таблицы:
    END_OF_HTML # $dbh->listtable возвращает массив таблиц, # имеющихся в текущей базе данных. my ©tables = $dbh->func( '_ListTables' ); foreach (@tables) { print "
  • $_\n"; } print < END_OF_HTML exit(0); И наконец, пример 10-3 показывает, как вывести все сведения о некоторой таблице. Пример 10-3. Программа CGI tabledump.cgi выводит сведения об указанной таблице #!/usr/bin/perl -w use strict; use CGI qw(:standard); use CGI::Carp; # Использовать модуль DBI use DBI; CGI::use_named_parameters(1); my ($db,Stable); my Soutput = new CGI; $server = param('server') or $server = "; $db = param('db') or die("He указана база данных !"); # Соединиться с указанным сервером. my $dbh = DBI->connect("DBI:mysql:$db:$server", undef, undef); # Готовим запрос к серверу, требующий все данные # таблицы. my $table_data = $dbh->prepare("select * from Stable"); # Посылаем запрос серверу. $table_data->execute; # Если возвращаемое значение не определено, таблица не существует # или пуста; мы не проверяем, что из двух верно. if (not $table_data) { print header, startjtml( 'title'=> "Данные по $host => $db => Stable", 'BGCOLOR'=>'white'); prin<$host

    $db

    Таблицы'Stable' нет в $db на $host. END_OF_HTML exit(0); } # Теперь мы знаем, что есть данные для выдачи. Сначала выведем # структуру таблицы. print header, start_html( title'=>"Данные по $host => $db => $table", 'BGCOLOR'=>'white'); print <$host

    $db

    $table

    <ТН>Поле<ТН>Тип<ТН>Размер<ТН>МОТ NULL
      END_OF_HTML If $table_data->name возвращает ссылку # на массив полей таблицы. my ©fields = @{$table_data->NAME}; # $table_data->type возвращает ссылку на массив типов полей. # Возвращаемые типы имеют стандартные обозначения SQL,
    Пoля
     
    <<-[Весь Текст]
    Страница: из 157
     <<-