• Publicidad

Crear tablas MySQL usando Perl

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Crear tablas MySQL usando Perl

Notapor cachailoco » 2017-06-30 02:05 @129

Estoy haciendo un script Perl que crea una base de datos y usa los datos que recupera de un texto.
Tengo problemas cuando creo las tablas con Perl: El programa crea la tabla pero no crea ninguna de sus columnas.

De ante mano, GRACIAS :D

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. use DBI;
  5. use CGI;
  6. use CGI::Carp qw( fatalsToBrowser );
  7.  
  8. my $host = "localhost";
  9. my $database = "p8";
  10.  
  11. my $user = "franco";
  12. my $pw = "galleta1";
  13.  
  14.  
  15. my $dbh = DBI->connect(        
  16.     "DBI:mysql:dbname=$database;host=$host",
  17.     $user,                        
  18.     $pw,                        
  19.     { RaiseError => 1 },        
  20. ) or die $DBI::errstr;
  21. $dbh->do("USE prueba");
  22.  
  23. my $dm = qq(DROP TABLE IF EXISTS microarreglo);
  24. my $rv = $dbh->do($dm);
  25.  
  26. $dbh->do("CREATE TABLE microarreglo (genes CHAR,valores FLOAT,title CHAR,sample CHAR,KEY(genes))");
  27.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
cachailoco
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2017-06-30 01:57 @123

Publicidad

Re: Crear tablas MySQL usando Perl

Notapor explorer » 2017-06-30 19:24 @850

Bienvenido a los foros de Perl en Español, cachailoco.

Pues yo no veo el problema... las sentencias son correctas.

¿Aparece algo en el log del MySQL? Ahí dirá por qué no crea las columnas.

Podría ser que le falta algún permiso al usuario... pero no sé exactamente cuál puede ser.

Yo... por seguridad... agregaría una línea

$dbh->disconnect;

al final del programa, para asegurarme que la base de datos se cierra de forma correcta.

Y... quizás ver qué es lo que devuelve la llamada a do() de la línea 26. Y si es un 'undef', ver el contenido de la variable $dbh->errstr;

Pero, lo dicho: la solución está en el registro de actividad de la base de datos.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Crear tablas MySQL usando Perl

Notapor cachailoco » 2017-07-01 04:12 @216

Tenía un problema utilizando la función quote() varias líneas más abajo...

Gracias por su tiempo.

Saludos.

cachailoco
cachailoco
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2017-06-30 01:57 @123


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron