Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Script para crear base de datos y tablas MySql

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio
Mensaje Mie Dic 20, 2006 12:08 am
caribesoft
Perlero Nuevo
Perlero Nuevo
Registrado: 09 May 2006
Mensajes: 73
Ubicación: Cancun
Script para crear base de datos y tablas MySql Responder citando

Hola Amigos Perlianos :

Necesito diseñar un script en Perl para que cuando se ejecute cree las tablas de una base de datos de MySql.

Normalmente esto se puede hacer creando una sentencia SQL, como esta :

Código:
create table clubes (
   recid int(10) not null auto_increment,
   distrito varchar(10),
   club varchar(60),
   primary key (recid))
   type=MyISAM comment="";

por cada tabla que desee crear.

Mi pregunta es cómo sería el código dentro de un Perl Script.

De antemano gracias por los tips,

Caribesoft
Mensaje Mie Dic 20, 2006 6:00 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4225
Ubicación: Valladolid, España
Responder citando

Sacado del ejemplo de la página de manual de DBD::mysql:
Perl:
  #!/usr/bin/perl

  use strict;
  use DBI();

  # Connect to the database.
  my $dbh = DBI->connect("DBI:mysql:database=test;host=localhost",
                         "joe", "joe's password",
                         {'RaiseError' => 1});

  # Drop table 'foo'. This may fail, if 'foo' doesn't exist.
  # Thus we put an eval around it.
  eval { $dbh->do("DROP TABLE foo") };
  print "Dropping foo failed: $@\n" if $@;

  # Create a new table 'foo'. This must not fail, thus we don't
  # catch errors.
  $dbh->do("CREATE TABLE foo (id INTEGER, name VARCHAR(20))");

  # INSERT some data into 'foo'. We are using $dbh->quote() for
  # quoting the name.
  $dbh->do("INSERT INTO foo VALUES (1, " . $dbh->quote("Tim") . ")");

  # Same thing, but using placeholders
  $dbh->do("INSERT INTO foo VALUES (?, ?)", undef, 2, "Jochen");

  # Now retrieve data from the table.
  my $sth = $dbh->prepare("SELECT * FROM foo");
  $sth->execute();
  while (my $ref = $sth->fetchrow_hashref()) {
    print "Found a row: id = $ref->{'id'}, name = $ref->{'name'}\n";
  }
  $sth->finish();

  # Disconnect from the database.
  $dbh->disconnect();
Mensaje Jue Dic 21, 2006 8:27 am
caribesoft
Perlero Nuevo
Perlero Nuevo
Registrado: 09 May 2006
Mensajes: 73
Ubicación: Cancun
Me sirvio de maravilla Responder citando

Muchas gracias Explorer, me sirvió de maravilla, pude crear un Perl script para que me cree las tablas, sin ninguna complicación.

Saludos,
Caribesoft Cool
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group