Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/02/2008, 11h14   #1
Invité de passage
 
Inscription : février 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 3
Points : 1
Points : 1
Par défaut Mysql, OO Base et auto_increment

Tout d'abord, pour mon premier post sur ce forum, bonjour à tous les codeurs et d'avance un grand merci pour votre aide.

En fait je développe une base de données sur OO Base et j'ai souhaité sortir du format natif de OO Base pour utiliser Mysql avec celui-ci, pour que la base de données soit externe. J'ai créé la base sur Phpmyadmin, elle est ok et fonctionnelle, les tables, clés primaires et étrangères sont définies, et chaque clés primaires est un entier qui s'auto-incrémente.

Mon problème est le suivant: quand j'accède à la base Mysql avec mon logiciel OO Base et que je souhaite insérer de nouvelles données, OO Base me demande d'insérer une clé primaire. En fait c'est logique puisque c'est obligatoire, mais dans ce cas à chaque fois que je veux insérer des données, comment puis-je retrouver dans OO Base la définition d'auto-increment définie dans les tables de la base Mysql?

En gros, dois-je développer qq chose dans OO Base pour auto-incrémenter les clés primaires, ou bien puis-je retrouver les propriétés des tables Mysql dans OO Base?

EN vous remerciant.
chrisounet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2008, 13h26   #2
Expert Confirmé
 
Avatar de qi130
 
Homme Pierre
Ingénieur qualité méthodes
Inscription : mars 2003
Messages : 3 726
Détails du profil
Informations personnelles :
Nom : Homme Pierre
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Finance

Informations forums :
Inscription : mars 2003
Messages : 3 726
Points : 4 739
Points : 4 739
Ne connaissant OObase, j'avoue avoir du mal à comprendre tout ton problème...

Cependant, pour t'aider dans la résolution, tu peux essayer d'insérer en spécifiant NULL pour alimenter les champs auto-incrémentés, ainsi que le recommande d'ailleurs MySQL
Citation:
Notez que si l'utilisateur spécifie la valeur NULL ou 0 pour la colonne AUTO_INCREMENT dans la commande INSERT, InnoDB traitera la ligne comme si aucune valeur n'avait été spécifiée, et générera une nouvelle valeur.
http://dev.mysql.com/doc/refman/5.0/...nt-column.html
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
qi130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2008, 15h10   #3
Invité de passage
 
Inscription : février 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 3
Points : 1
Points : 1
Merci pour ton aide.

En fait, mon problème est que par exemple, dans un formulaire d'ajout de ligne dans une table (semblable à ce qu'on peut trouver sur access), il ne sait pas que la clé primaire de cette table est auto incrémenté par mysql. Il y a beau avoir un lien entre mysql et oo base, apparemment ca ne semble pas gérer l'auto-incrémentation. Ce qui fait que (débutant dans oo base), je ne sais pas comment faire pour éviter de saisir systématiquement une valeur pour la clé primaire.

A noter que dans oo base, si la base de données est interne, on peut activer l'auto-incrémentation. Mais on ne peut plus une fois que la base est sur mysql!
chrisounet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2008, 15h36   #4
Invité de passage
 
Inscription : février 2008
Messages : 3
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 3
Points : 1
Points : 1
Bon, j'ai résolu mon problème.

Pour ceux qui se poserait la même question, mettre la base en Innodb (j'étais en MyIsam) résout le problème!! Bizarre!
chrisounet est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h19.


 
 
 
 
Partenaires

Hébergement Web