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

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

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

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
# Теперь можно переназначить $mytable_output или подготовить для него
# другую команду SQL.
DBI::func
$handlc->func(@func_argumcnts, $func_name); 
@dbs = $db->func("$hostname", '_ListDBs');
@dbs = $db->func("$hostname:Sport", '_ListDBs');
@tables = $db->func('_ListTables'); 
$result = $drh->func( $database, '_CreateDB' );
Sresult = $drh->func( Sdatabase, '_DropDB' );
DBI::func вызывает специализированные непереносимые функции, включенные в 
различные драйверы DBD. Она используется с описателем базы данных или 
описателем команды, в зависимости от назначения специализированной функции. По 
возможности следует использовать равносильную переносимую функцию. При 
использовании специализированной функции сначала передаются ее аргументы как 
скаляр, а затем - имя функции. DBD::mSQL и DBD::mysql реализуют следующие 
функции:
_ListDBs 
Функция _ListDBs принимает имя узла и необязательный номер порта и возвращает 
список имеющихся у сервера баз данных. Лучше использовать переносимую функцию 
DBJ::data_sources .
_ListTables
Функция _ListTables возвращает список таблиц, имеющихся в текущей базе данных.
_CreateDB
Функция _CreateDB принимает в качестве аргумента имя базы данных и пытается 
создать эту базу данных на сервере. Для работы с этой функцией необходимо иметь 
право создания баз данных. Функция возвращает -1 в случае неудачи и 0 в случае 
успеха.
_DropDB
Функция _DropDB принимает в качестве аргумента имя базы данных и пытается 
удалить с сервера эту базу данных. Данная функция не выводит пользователю 
сообщений и при успешном выполнении удаляет базу данных навсегда. Для работы с 
этой функцией необходимо иметь право удаления баз данных. Функция возвращает -1 
в случае неудачи и 0 в случае успеха.
Пример
use DBI;
my $db = DBI->connect('DBI:mysql:mydata','me','mypassword');
my @tables =.$db->func('„List-Tables');
# @tables содержит теперь список таблиц в 'mydata'.
DBI::neat
$neat_string = DBI: :neat($s'tring); 
$neat_string = DBI::neat($string, $maxlen);
DBI: : neat Принимает в качестве аргументов строку и необязательную длину. 
Затем строка форматируется для аккуратного вывода. Вся строка заключается в 
одиночные кавычки. Непечатаемые символы заменяются точками. Если задан аргумент 
длины, все символы после максимальной длины удаляются, а строка заканчивается 
тремя точками (...). Если длина не указана, по умолчанию используется значение 
400.
Пример
use DBI;
my $string = "Это очень, очень длинная строка, в которой много чего написано. 
";
my$neat_string = OBI: :neat($string,14);
# Теперь $neat_string такая: 'Это очень, оче...
DBI::neat_list
$neat_string = DBI::neat_list(\@listref, $maxlen);
$neat_string = DBI::neat_list(\@listref, $maxlen, $field_seperator);
DBI: :neat_list принимает три аргумента и возвращает аккуратно 
отформатированную строку, пригодную для вывода. Первый аргумент содержит ссылку 
на список выводимых значений. Второй аргумент -максимальная длина каждого поля. 
Последний аргумент - строка, используемая для разделения полей. Для каждого 
элемента списка вызывается OBI: :neat с использованием заданной максимальной 
длины. В результирующих строках для разделения полей используется последний 
аргумент. Если последний аргумент не задан, в качестве разделителя применяется 
запятая.
Пример
use DBI;
my @list = (' Bob', 'Joe', 'Frank');
my $neat_string = DBI::neat_list(\@list, 3);
# Теперь $neat_string такая: 'Bob', 'Joe', 'Fra...
DBI::prepare
$statement_handle = $db->prepare($statement); 
$statement_handle = $db->prepare($statement, \%unused);
DBI: :prepare принимает в качестве аргумента SQL-команду, которую некоторые 
модули баз данных переводят во внутреннюю компилированную форму, исполняемую 
быстрее при вызове DBI: : execute . Эти модули DBD (не DBD::mSQL или 
DBD::mysql) принимают также ссылку на хэш необязательных атрибутов. Серверы 
mSQL и MySQL в настоящее время не реализуют концепцию подготовки команд, 
поэтому DBI: : prepare просто запоминает команду. По желанию вместо значений 
данных в команду можно вставить любое количество символов '?'. Эти символы 
известны как метки-заместители (placeholders). Функция DBI: : bind_param 
 
<<-[Весь Текст]
Страница: из 157
 <<-