Discussion:
mysqlpp pour mysql5
(trop ancien pour répondre)
Frantz Dorsemaine
2011-05-09 13:02:07 UTC
Permalink
Bonjour, existe t-il une version de mysqlPP pour mysql5 en vue de
migrer mes bases mysql de 4.0 et 3.52 vers mysql 5
Paul Gaborit
2011-05-09 16:07:26 UTC
Permalink
À (at) Mon, 9 May 2011 06:02:07 -0700 (PDT),
Post by Frantz Dorsemaine
Bonjour, existe t-il une version de mysqlPP pour mysql5 en vue de
migrer mes bases mysql de 4.0 et 3.52 vers mysql 5
DBD::mysqlPP est une version "pur" Perl de DBD::mysql. La dernière
version est la 0.04 ! Cette version est-elle compatible mysql 5 ? Je
n'en sais strictement rien (mais je ne miserais pas un kopeck
là-dessus). En revanche, qu'est-ce qui vous empêche de passer
directement à DBD::mysql (c'est une question pas une critique) ?
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Frantz Dorsemaine
2011-05-09 17:01:46 UTC
Permalink
Post by Paul Gaborit
À (at) Mon, 9 May 2011 06:02:07 -0700 (PDT),
Post by Frantz Dorsemaine
Bonjour, existe t-il une version de mysqlPP pour mysql5 en vue de
migrer mes bases mysql de 4.0 et 3.52 vers mysql 5
DBD::mysqlPP est une version "pur" Perl de DBD::mysql. La dernière
version est la 0.04 ! Cette version est-elle compatible mysql 5 ? Je
n'en sais strictement rien (mais je ne miserais pas un kopeck
là-dessus).  En revanche, qu'est-ce qui vous empêche de passer
directement à DBD::mysql (c'est une question pas une critique) ?
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Du nouveau!
J'ai installé dans une autre vmware perl 5.12 puis le module mysqlPP
et wamp pour mysql.

Ca fonctionne à un détail important prêt.

voici un script dont la 1ere requête fonctionne mais pas le 2ème. E
nfait c'est la close WHERE qui pose probleme.

Avez vous une idée.

Le chix de mysqlPP se porte surtout sur le fait que je n'ai pas envie
de me reprendre les centaines de requêtes pour les faire fonctionner
avec une autre driver à moins que la syntaxe soit la même que
mysqlPP??

#!/usr/bin/perl -w
#use Encode::Unicode;
use DBI;
#use utf8;

&Requete;


sub Requete {
my $BaseName ="test";
my $host = "192.168.1.122";
$login="test";
$pass="test";

my $BaseType="DBI:mysqlPP:$BaseName:host=$host;port=3306";
print "Connexion en cours\n";
our $Base=DBI->connect($BaseType,$login,$pass) or die "$DBI::errstr";
print "ok\n";

my $rqt1=$Base->prepare("SELECT *
FROM aaa

");
$rqt1->execute()|| die"$DBI::errstr";
while(my ($nom) = $rqt1->fetchrow()) {
print "$nom\n";

}
my $rqt2=$Base->prepare("SELECT *
FROM aaa
WHERE id = '1'
");
$rqt2->execute()|| die"$DBI::errstr";
while(my ($nom) = $rqt2->fetchrow()) {
print "$nom\n";

}

}
Frantz Dorsemaine
2011-05-09 17:05:42 UTC
Permalink
Post by Frantz Dorsemaine
Post by Paul Gaborit
À (at) Mon, 9 May 2011 06:02:07 -0700 (PDT),
Post by Frantz Dorsemaine
Bonjour, existe t-il une version de mysqlPP pour mysql5 en vue de
migrer mes bases mysql de 4.0 et 3.52 vers mysql 5
DBD::mysqlPP est une version "pur" Perl de DBD::mysql. La dernière
version est la 0.04 ! Cette version est-elle compatible mysql 5 ? Je
n'en sais strictement rien (mais je ne miserais pas un kopeck
là-dessus).  En revanche, qu'est-ce qui vous empêche de passer
directement à DBD::mysql (c'est une question pas une critique) ?
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Du nouveau!
J'ai installé dans une autre vmware perl 5.12 puis le module mysqlPP
et wamp pour mysql.
Ca fonctionne à un détail important prêt.
voici un script dont la 1ere requête fonctionne mais pas le 2ème. E
nfait c'est la close WHERE qui pose probleme.
Avez vous une idée.
Le chix de mysqlPP se porte surtout sur le fait que je n'ai pas envie
de me reprendre les centaines de requêtes pour les faire fonctionner
avec une autre driver à moins que la syntaxe soit la même que
mysqlPP??
#!/usr/bin/perl -w
#use Encode::Unicode;
use DBI;
#use utf8;
&Requete;
sub Requete {
my $BaseName ="test";
my $host = "192.168.1.122";
$login="test";
$pass="test";
my $BaseType="DBI:mysqlPP:$BaseName:host=$host;port=3306";
print "Connexion en cours\n";
our $Base=DBI->connect($BaseType,$login,$pass) or die "$DBI::errstr";
print "ok\n";
my $rqt1=$Base->prepare("SELECT *
                                        FROM aaa
                                        ");
    $rqt1->execute()|| die"$DBI::errstr";
while(my ($nom) = $rqt1->fetchrow()) {
    print "$nom\n";
}
my $rqt2=$Base->prepare("SELECT *
                                        FROM aaa
                                        WHERE id = '1'
                                        ");
    $rqt2->execute()|| die"$DBI::errstr";
while(my ($nom) = $rqt2->fetchrow()) {
    print "$nom\n";
}
}
Et voila faut écouter les conseil, grand merci Paul car DBD::Mysql
utilise la même syntaxe et cela fonctionne.
Merci encore ;)
Frantz
Paul Gaborit
2011-05-09 22:21:01 UTC
Permalink
À (at) Mon, 9 May 2011 10:05:42 -0700 (PDT),
Post by Frantz Dorsemaine
Et voila faut écouter les conseil, grand merci Paul car DBD::Mysql
utilise la même syntaxe et cela fonctionne.
Parfait. Attention l'inverse n'est pas vrai : on peut faire des choses
avec DBD::mysql qu'on ne peut pas faire avec DBD::mysqlPP. ;-)


N'oubliez pas non plus qu'il faudra mettre à jour DBD::mysql aussi
souvent que mysql lui-même pour ne pas risquer d'incompatibilités (bien
qu'il y ait peu de risques).
Post by Frantz Dorsemaine
Merci encore ;)
Ça fait toujours plaisir à lire. ;-)
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Frantz Dorsemaine
2011-05-10 08:00:11 UTC
Permalink
Post by Paul Gaborit
À (at) Mon, 9 May 2011 10:05:42 -0700 (PDT),
Post by Frantz Dorsemaine
Et voila faut écouter les conseil, grand merci Paul car DBD::Mysql
utilise la même syntaxe et cela fonctionne.
Parfait. Attention l'inverse n'est pas vrai : on peut faire des choses
avec DBD::mysql qu'on ne peut pas faire avec DBD::mysqlPP. ;-)
N'oubliez pas non plus qu'il faudra mettre à jour DBD::mysql aussi
souvent que mysql lui-même pour ne pas risquer d'incompatibilités (bien
qu'il y ait peu de risques).
Post by Frantz Dorsemaine
Merci encore ;)
Ça fait toujours plaisir à lire. ;-)
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Reste un problème à résoudre mais cette fois ci c'est l'installation
DBD::mysql sur macOSX 10.6.7.
Voici le message d'erreur :
Last login: Mon May 9 19:53:37 on ttys000
MacBook-Pro-de-Frantz-DORSEMAINE:~ frantzdorsemaine$ cd Downloads/DBD-
mysql-4.019
MacBook-Pro-de-Frantz-DORSEMAINE:DBD-mysql-4.019 frantzdorsemaine$
perl Makefile.PL
Set up build environment without MacOSX10.4u SDK (will build i386
binaries)
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 82.

Cannot find the file 'mysql_config'! Your execution PATH doesn't seem
not contain the path to mysql_config. Resorting to guessed values!
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located


PLEASE NOTE:

For 'make test' to run properly, you must ensure that the
database user 'frantzdorsemaine' can connect to your MySQL server
and has the proper privileges that these tests require such
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others.

mysql> grant all privileges on test.* to
'frantzdorsemaine'@'localhost' identified by 's3kr1t';

You can also optionally set the user to run 'make test' with:

perl Makefile.PL --testuser=username

Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 464.
Can't find mysql_config. Use --mysql_config option to specify where
mysql_config is located
Failed to determine directory of mysql.h. Use

perl Makefile.PL --cflags=-I<dir>

to set this directory. For details see the INSTALL.html file,
section "C Compiler flags" or type

perl Makefile.PL --help
MacBook-Pro-de-Frantz-DORSEMAINE:DBD-mysql-4.019 frantzdorsemaine$
Paul Gaborit
2011-05-10 12:22:01 UTC
Permalink
À (at) Tue, 10 May 2011 01:00:11 -0700 (PDT),
Post by Frantz Dorsemaine
Reste un problème à résoudre mais cette fois ci c'est l'installation
DBD::mysql sur macOSX 10.6.7.
Last login: Mon May 9 19:53:37 on ttys000
MacBook-Pro-de-Frantz-DORSEMAINE:~ frantzdorsemaine$ cd Downloads/DBD-
mysql-4.019
MacBook-Pro-de-Frantz-DORSEMAINE:DBD-mysql-4.019 frantzdorsemaine$
perl Makefile.PL
Set up build environment without MacOSX10.4u SDK (will build i386
binaries)
Can't exec "mysql_config": No such file or directory at Makefile.PL
line 82.
Il faut s'assurer que le répertoire contenant les binaires liés à mysql
est bien présent dans la variable d'environnement $PATH.

Question : pourquoi ne pas passer par fink ou macports pour installer
tout cela ?
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Loading...