Programação  
 
Conhecimento computador >> Programação >> Programação PHP /MySQL >> 
MySQL Perl DBI Tutorial
Um dos recursos mais poderosos do Perl é sua capacidade de processar , analisar , manipular e formatar texto e dados , tornando-se uma linguagem ideal para o desenvolvimento de aplicações de banco de dados . A Interface ( DBI ) Módulo Perl banco de dados faz com que seja fácil de conectar e usar uma ampla gama de sistemas de banco de dados , incluindo MySQL . Além de Perl , o módulo Perl DBI e DBD :: :: motorista banco de dados mysql deve ser instalado no sistema em que os scripts são desenvolvidos e executados. A maioria das funcionalidades do MySQL pode ser acessado através do driver do MySQL para Perl :: DBI . Conectando-se ao servidor MySQL

Antes de executar consultas e outras declarações em um banco de dados , o script precisa estabelecer uma conexão. Importe o módulo DBI no seu script com " usar DBI " :

use DBI ;

A DBI- > função conectar conecta a um banco de dados e retorna o manipulador de banco de dados. Estabelecer uma conexão com um banco de dados local , fornecendo o nome do seu banco de dados no parâmetro de origem , eo nome de usuário e senha para o usuário do MySQL seu script será usado para a conexão:

my $ dbh = DBI- > , connect (' DBI : mysql : dbname' , 'user ', ' senha' ) or die "Conexão falhou: $ DBI :: errstr ";

Conectando a um banco de dados remoto é semelhante a uma ligação local por fornecendo o endereço do host remoto no parâmetro source. No exemplo a seguir , o atributo RaiseError está definido para reportar erros via die ( ) no lugar do "ou morrer " erro manual de cláusula no exemplo anterior a verificação . O atributo PrintError está desativado. PrintError informa automaticamente erros via avisar () quando ativado

my $ dbh = DBI- > connect ( " DBI : mysql : dbname ; host = db.server.edu ' . , ' User ' , ' password ' { PrintError => 0, RaiseError => 1 }); .

Antes de sair do script, desconectar-se do banco de dados usando a função de desconexão

$ dbh -> disconnect ( ) ;

consultas básicas

a declaração mais comum executado em um banco de dados é a instrução SELECT . Criar um manipulador de instrução , chamando a função preparar com a instrução SELECT . Por exemplo, este SELECT consultar uma listagem de mesa de pessoas para o primeiro campo de nome para todas as entradas onde o último nome é " Johnson " :

my $ sth = $ dbh -> prepare ( "SELECT Nome FROM pessoas onde sobrenome = ' Johnson ' ");

execute a instrução :

$ sth -> execute () ;

Recuperar uma linha de dados em um momento como um hash e imprimir os resultados :

print " Consulta por sobrenome Johnson : \\ n " ; while ( my $ resultrow = $ sth -> fetchrow_hashref ()) {my $ fn = $ resultrow -> { primeiro nome }; print " $ fn \\ n"; }

Existem várias funções para recuperar os resultados da consulta , tais como fetchrow_array para buscar a próxima linha como uma matriz e fetchall_hashref para buscar todos os resultados ao mesmo tempo em um hash.
Usando marcadores

espaços reservados podem ser usados ​​na declaração de preparar função. Isto é útil em scripts interativos , onde os valores de filtro de consulta são fornecidos pelo usuário , especialmente se um loop permite ao usuário enviar várias consultas antes de sair.

Por exemplo , o espaço reservado ( o ponto de interrogação) fornece o local onde entrada do usuário será fornecido quando a instrução é executada :

my $ sth = $ dbh -> prepare ( 'SELECT * FROM pessoas onde sobrenome = ? " ) or die " Erro de declaração: " . $ dbh -> errstr ;

Um loop while repetidamente solicita ao usuário um nome:

impressão "Procurar sobrenome: "; while ($ sobrenome = <>) { chomp $ sobrenome ; my @ resultados;

A declaração preparada anteriormente é executado, com US $ sobrenome fornecido como um parâmetro . Este parâmetro será inserido na instrução de consulta no lugar do ponto de interrogação espaço reservado :

$ sth -> execute ( $ sobrenome ) or die "Erro de declaração:" . $ sth -> errstr ;

Os resultados , se houver, são impressos :

if ( linhas $ sth -> == 0) {print " sem resultados para ` $ sobrenome . '\\ n \\ n "; }

while ( @ results = $ sth -> fetchrow_array ()) {my $ nome = $ resultados [1] , a minha idade = $ $ resultados [3]; print " $ $ primeiro nome sobrenome ( $ idade ) \\ n"; }

o identificador de instrução está arrumado com o método de acabamento , eo ciclo continua :

$ sth -> finish ; imprimir "Procurar sobrenome: ";}
adicionar, atualizar e excluir registros

atualizações , inserções e exclusões podem ser executados simplesmente usando a função de fazer. Por exemplo :

$ dbh -> fazer ( " INSERT INTO pessoas ( nome, sobrenome , idade) VALUES (' Bob ', ' Johnson , 32) "); $ dbh -> fazer ( " atualizar as pessoas set nome = ' Robert' onde nome = " , undef , " Bob " ); $ dbh -> não ( ?" DELETE FROM pessoas onde sobrenome = ' Johnson ' ");
construção e gestão de um banco de dados

funções de administração de banco de dados são executadas com a função de função usando o banco de dados obtidos a partir de lidar com a conexão:

$ dbh -> func ( " createdb ", $ dbname , 'admin' ); $ dbh -> func ( " dropdb ", $ dbname , 'admin' );

O servidor também pode ser recarregado e desligar . Esta funcionalidade é útil para simplificar e automatizar tarefas de administração de sistemas de banco de dados. Privilégios suficientes são necessárias para essas ações .
Mesa

banco de dados criar e alterar as instruções podem ser executadas com a função de fazer. Por exemplo, esta declaração cria a tabela de pessoas :

$ dbh -> não ( "CREATE TABLE pessoas (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, VARCHAR primeiro nome (50) , sobrenome VARCHAR ( 50) , INT idade ) ");

Criar e atualizar bancos de dados existentes é útil para automatizar a instalação de aplicações distribuídas , tais como fóruns de discussão , galerias de fotos e blogs

.

Anterior :

Próximo : No
  Os artigos relacionados
·Estilos Tese de tabela para WordPress 
·Simples Banco de Dados MySQL PHP Tutorial 
·Como acelerar o INSERT em MySQL 
·Como truncar Tudo Depois de um personagem em PHP 
·Como programar uma bala no PHP 
·Como configurar SSL em PHP 
·Como aparar a String para o comprimento em PHP 
·MySQL Xampp é lento 
·Como atualizar o MySQL no XAMPP 
·Ferramentas SQL Escrita 
  Artigos em destaque
·Função GCC Sistema 
·O que é um manipulador de eventos 
·Conceitos básicos do computador em Turbo C + + 
·Como formatar uma barra de status em um Java RPG 
·Como fazer upload de imagens em JSP 
·Tipos de verificações de validação 
·Como incluir arquivos JAR no seu projeto Build Path no …
·Padrão Proxy Explicação 
·Como redimensionar imagens utilizando C # 
·Como adicionar um JScrollPane para um JFrame 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados