• Publicidad

Conección a Mysql en Windows 7

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Conección a Mysql en Windows 7

Notapor Negrazo49 » 2021-09-22 13:53 @620

Hola a todos.

Tengo un par de reportes en los que leo de una simple tabla y trato de desplegar todos los registros y funciona bien, solo que en ambos está omitiendo el primer registro.

¿Será cosa del controlador?

Odio Windows, pero así me lo pidió un cliente y ¡ni modo! Lo que el cliente pida.

Yo sé que en Windows se tiene que crear un origen de datos y estos son ODBC.
¿Alguien tendrá un ejemplo de conexión?
Yo creo que mi problema va por ahí.

Estoy utilizando Strawberry Perl y Mysql.

Gracias de antemano.
Negrazo49.
Negrazo49
Perlero nuevo
Perlero nuevo
 
Mensajes: 6
Registrado: 2021-09-21 22:37 @984

Publicidad

Re: Conección a Mysql en Windows 7

Notapor explorer » 2021-09-22 15:49 @701

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

¿Usas DBD::ODBC?

Ver un poco del código inicial ayudaría. Al menos, crear un programa lo más pequeño posible que demuestre que no funciona.

¿Has visto los mensajes de error?

Por este foro encontrarás algunos mensajes sobre ODBC. Usa esa palabra en la caja de búsqueda.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Conección a Mysql en Windows 7

Notapor Negrazo49 » 2021-09-22 19:14 @843

Estimado explorer:
Aqui te mando el paquete de coneccion:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. package connectDB;
  2. use DBI;
  3.  
  4. # Configurar el acceso a la DB
  5. sub Conn
  6.   {
  7. my $m = DBI->connect("DBI:mysql:camporeal",'root','');
  8. {RaiseError=> 1}) or die('No me puedo conectar a la DB');
  9. return $m;
  10.     }
  11. return 1;
  12.  
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4


Y aqui envio la parte del programa que omite el 1er registro, yo no le encuentro error alguno.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!"c:\\strawberry\\perl\\bin\\perl.exe"
  2.  
  3. require 'connectDB.pl';
  4. use CGI::Carp qw(fatalsToBrowser);
  5. use DBI;
  6. use CGI qw(param uploadInfo);
  7. use CGI;
  8. use CGI ':standard';
  9. use CGI::Session;
  10.  
  11. my @doc1 = "";
  12. my $j = 0;
  13. my $cic = "";
  14. my $con = "";
  15.  
  16. my $cgi = new CGI;
  17. my $CGISESSID = $cgi->param('CGISESSID');
  18. my $session =
  19.    CGI::Session->load("driver:File",$CGISESSID,{'Directory'=>'/tmp/'})
  20.        or die CGI::Session->errstr;
  21.  
  22. print "Content-type: text/html\n\n";
  23. print start_html(-title=>'CampoReal', -bgcolor=>'#cccccc');
  24.  
  25. # Configurar el acceso a la DB
  26. $con = connectDB::Conn($m)
  27.   or die "No puedo conectarme  a la database\n";
  28.  
  29. print font ({-size=>'4',  -color=>'Red'},'Casas CampoReal');
  30. print "<BR>";
  31.  
  32. print "<TABLE align='center' border='3' >\n";
  33. print "<TR><th>Cont.</th><th>Nombre</th><th>Direccion</th><th>Email</th><th>Telefono</th><th>Celular</th><th>Status</th></TR>\n";
  34.  
  35. my $sth1 = $con->prepare("SELECT  nombre,direccion,email,telefono,celular,status FROM casas where status = 'Activo' order by direccion ");
  36. $sth1->execute()or die "No puedo leer Casas....";
  37. @doc1 = $sth1->fetchrow_array;
  38. print basefont ({-face=>'Arial'});
  39. print "<H2 align='center'><B>Relacion de Casas</B></H2>";
  40. while (@doc1 = $sth1->fetchrow_array)
  41. {
  42.    $j++;
  43.    print "<tr>";
  44.    print "<B><td>$j</td><td>$doc1[0]</td><td>$doc1[1]</td><td>$doc1[2]</td><td>$doc1[3]</td><td>$doc1[4]</td><td>$doc1[5]</td></B>";
  45.    print "</tr>\n";
  46. }
  47.  
  48. print "</TABLE>\n";
  49.  
  50.      print "<BR>";
  51.     print button(-name=>'back', -value=>'Atras', -onClick=>'history.go(-1)');
  52.  
  53. exit;
  54.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Espero que puedas ayudarme.
Gracias.
Negrazo49
Perlero nuevo
Perlero nuevo
 
Mensajes: 6
Registrado: 2021-09-21 22:37 @984

Re: Conección a Mysql en Windows 7

Notapor explorer » 2021-09-22 21:04 @919

El primer registro lo lees en la línea 37, pero no haces uso de él. Por eso lo pierdes.

Quita la línea 37.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Conección a Mysql en Windows 7

Notapor Negrazo49 » 2021-09-23 11:11 @508

Muchas gracias, explorer, ya funcionó bien.

Estaba duplicando esa instrucción en la línea 40.
Asunto resuelto. Se cierra este hilo.

Saludos desde Guadalajara, México.
Negrazo49
Perlero nuevo
Perlero nuevo
 
Mensajes: 6
Registrado: 2021-09-21 22:37 @984


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados