ProgramacionFacil

UNIDAD 7: INTRODUCION A LAS BASES DE DATOS

TEMA PERL 11: OPERACIONES CON CAMPOS

Este es tambien un caso comun con elementos de una tabla, sin embargo es tambien facil de resolver.

Es necesario recordar primero algunas cosas elementales:

1.- La operacion que se plantee se puede realizar con todos los renglones de la tabla o con un solo renglon de la tabla para procesar todos los renglones se usara un ciclo while(como en el ejemplo), si solo se quiere procesar un solo renglon o una celda o columna no se usar el while.

2.- En el ejemplo se realiza la operacion con todos los renglones de la tabla y no olvidar que se tiene que usar la instruccion sql Update para que la nueva informacion se actualize en disco.

3.- Es por esta razon que se usaran dos enlaces o conecciones($dbh1 y $dbh2 ) y dos prepare() ($sth1 y $sth2) para poder mandar las instrucciones select y update.

Prog44.pl

#! /usr/bin/perl -w

# usando modulo o libreria CGI

use CGI;

use DBI;

# creando el OBJETO de tipo CGI

$q = new CGI;

# mandando servidor los encabezados de la pagina html

print $q→header;

print $q→start_html();

# creando una form o ventana

print $q→startform();

# creando un submit button

print $q→submit('ARITMETICA');

# cerrando la forma

print $q→endform();

#cerrando html

print $q→end_html;

if ( $q→param('ARITMETICA')) {

# creando DOS enlaces o conecciones dbh⇒database handle

my $dbh1 = DBI→connect('DBI:mysql:mibase:localhost','USUARIO','PASSWORD')|| die “ERROR CONECCION : $DBI::errstr”;

my $dbh2 = DBI→connect('DBI:mysql:mibase:localhost','USUARIO','PASSWORD')|| die “ERROR CONECCION : $DBI::errstr”;

# preparando el query sql OBSERVAR QUE TAMBIEN SE MANEJAN DOS STH

my $sth1 = $dbh1→prepare('SELECT * FROM mitabla');

$sth1→execute;

# ciclo de lectura de todos los renglones de la tabla

while ( my ($clave, $nombre, $edad, $estatura) = $sth1→fetchrow_array() ) {

# aumentando y usando UPDATE SQL pero a la caceccion DOS

$estatura = $estatura + 100.0;

# ESTE PROGRAMA ACTUALIZARLO USTEDES Y SOLO USAR UPDATE MI TABLA SET ESTATURA = ESTATURA +100 PARA EVITAR ENTRAR MIL VECES A LA BASE DE DATOS $sth2 = $dbh2→prepare(” UPDATE mitabla SET estatura = ? WHERE clave = ? ”);

$sth2→execute( $estatura, $clave );

};

# cerrando instrucciones y conecciones

$sth1→finish;

$sth2→finish;

$dbh1→disconnect();

$dbh2→disconnect();

print “edades aumentadas”;

};

</code>

corrida

image286.jpg

TAREAS PROGRAMACION PERL MYSQL :

1.- construir una tabla que traiga matricula, nombre, calif1, calif2, calif3 y promedio, cargar en mysql directamente unos 5 renglones de alumnos, no cargar promedio, el promedio lo deberan calcular con un programa.

 




 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Politica de Privacidad