“Conocimientos Programación>Programación PHP /MySQL

MySQL Perl DBI Tutorial

2012/6/21
Una de las características más potentes de Perl es su capacidad para procesar , analizar , manipular y dar formato al texto y datos, por lo que es un lenguaje ideal para el desarrollo de aplicaciones de bases de datos . La interfaz de base de datos Perl (DBI ) módulo facilita la conexión y uso de una amplia gama de sistemas de bases de datos , incluyendo MySQL. Además de Perl, Perl :: módulo DBI y DBD :: mysql base de datos del controlador debe estar instalado en el sistema en el que se desarrollan y ejecutan los scripts. La mayoría de la funcionalidad de MySQL se puede acceder a través del controlador Perl para MySQL :: DBI . Conexión con el servidor

MySQL Antes de poder ejecutar consultas y otras declaraciones en una base de datos , el script necesita para establecer una conexión . Importe el módulo DBI en el script de "uso DBI ":

use DBI ;

> DBI - función de conexión se conecta a una base de datos y devuelve un manejador de base de datos . Establecer una conexión a una base de datos local , proporcionando el nombre de la base de datos del parámetro de origen , y el nombre de usuario y la contraseña para el usuario de MySQL script utilizará para la conexión:

mi $ dbh = DBI -> ; connect ( ' DBI : mysql : dbname ' , "usuario" , "contraseña" ) or die " Error de conexión: $ DBI :: errstr " ;

conexión a una base de datos remota es similar a una conexión local proporcionar la dirección del host remoto en el parámetro source. En el siguiente ejemplo, el atributo RaiseError se ajusta para informar de errores a través de die ( ) en lugar del " o morir " error manual de cláusula de comprobación en el ejemplo anterior . El atributo PrintError está desactivado. PrintError informa automáticamente de errores a través de advertir () cuando está activado

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

Antes de salir de la secuencia de comandos , desconectarse de la base de datos con la función de desconexión

$ dbh- > (desconexión ) ;
consultas Basic

la declaración más común ejecutado en una base de datos es la instrucción SELECT . Crear un contexto de sentencia llamando a la función de preparar la sentencia SELECT. Por ejemplo, SELECT será consultar un cuadro sinóptico de las personas para el campo de nombre para todas las entradas donde el apellido es " Johnson" :

my $ sth = $ dbh- > prepare ( "nombre SELECT FROM gente DONDE apellido = ' Johnson ' ");

ejecute la instrucción :

$ sth -> execute ();

Recupera una fila de datos a la vez que un hash e imprimir los resultados :

print "Consulta de apellido Johnson : \\ n"; while ( my $ resultrow = $ sth -> fetchrow_hashref ()) {my $ fn = $ resultrow -> { firstname} ; print " $ fn \\ n"; }

Hay varias funciones para la recuperación de resultados de la consulta , como fetchrow_array a buscar la siguiente fila como una matriz y fetchall_hashref a buscar todos los resultados en una sola vez en un hash.
Usando Marcadores de Posición

marcadores de posición se puede utilizar en la sentencia function preparar. Esto es útil en scripts interactivos donde los valores de filtro de consulta son proporcionados por el usuario, sobre todo si un bucle permite al usuario enviar varias consultas antes de salir.

Por ejemplo , el marcador de posición ( el signo de interrogación ) ofrece el lugar donde se proporcionará la entrada del usuario cuando se ejecuta la sentencia :

my $ sth = $ dbh- > prepare ( " SELECT * FROM gente DONDE lastname = ? ") or die "error declaración : " . $ dbh- > errstr ;

Un bucle while pide repetidamente al usuario un apellido :

print " Buscar apellidos: " , mientras que ( $ apellido = < > ) { chomp $ apellido , mis @ resultados;

la sentencia preparada anteriormente se ejecuta , con $ apellido proporcionado como parámetro. Se insertará este parámetro en la instrucción de consulta en lugar de la marca de marcador de posición pregunta:

$ sth -> execute ($ apellido ) or die "error declaración : " . $ sth -> errstr ;

Los resultados , en su caso , se imprimen :

if ( $ sth -> filas == 0 ) { print " No hay coincidencias para ` $ apellidos '\\ n \\ n "; . }

mientras que ( los resultados de @ = $ sth -> fetchrow_array ()) { my $ nombre = $ resultados [ 1 ] , mi edad = $ $ resultados [ 3 ] ; print " $ $ Nombre Apellido ($ edad ) \\ n"; }

el identificador de instrucción se arreglaban con el método de acabado , y el bucle continúa:

$ sth -> acabado ; print " Buscar apellidos: ";}
agregar, actualizar y eliminar registros

actualizaciones , inserciones y eliminaciones se pueden ejecutar simplemente utilizando la función do . Por ejemplo :

$ dbh- > do ( "INSERT INTO personas ( nombre, apellidos , edad ) VALUES ( ' Bob ', ' Johnson ' , 32 )"); $ dbh- > do ( " ACTUALIZACIÓN personas establecen primer nombre = 'Robert ' WHERE Nombre = " undef ", Bob ? "); $ dbh- > do ( " DELETE FROM gente dONDE apellido = ' Johnson ' ");

construcción y gestión de una
funciones de administración de bases de datos

base de datos se ejecutan con la función func usando manejar la base de datos obtenidos de la conexión:

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

El servidor también se puede cargar y cerrar . Esta funcionalidad es útil para simplificar y automatizar las tareas de administración de sistemas de bases de datos . Suficientes privilegios son necesarios para estas acciones.
Tabla de base de datos

sentencias CREATE y ALTER puede ser ejecutado con la función do . Por ejemplo, esta sentencia crea la tabla de personas :

$ dbh- > do ( "CREATE TABLE personas (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY , nombre VARCHAR ( 50 ) , apellido VARCHAR ( 50 ) , INT edad ) ");

Creación y actualización de bases de datos existentes es útil para automatizar la instalación de aplicaciones distribuidas , tales como foros, galerías de fotos y blogs

.

Programación PHP /MySQL
Cómo usar apuntadores de archivo en PHP
Cómo cambiar una línea en un archivo PHP
Cómo eliminar datos MySQL en un cierto período de tiempo con PHP
Cómo detectar Robots en PHP
Cómo ejecutar un archivo PHP externo con JavaScript
MySQL Seleccione Número de registros Tutorial
¿Qué es un archivo PHP
Cómo conseguir una Sub XML Estructura de fragmentos de un archivo XML grande
Conocimientos Informáticos © http://www.ordenador.online