begin process at 2012 05 30 05:19:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Base de données

 > 

SQL

 > 

VC++ MySql


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

VC++ MySql

vendredi 18 septembre 2009 à 23:40:14 | VC++ MySql

isir

comment lister les N derniers enregistrement d'une table (MySql) avec une seule requête ?


c bon

samedi 19 septembre 2009 à 16:25:41 | Re : VC++ MySql

racpp

Administrateur CodeS-SourceS

Salut,
Ta table devrait avoir un champ id auto-incrémenté. Pour N=10 la requete ressemblerait à ceci:
SELECT * FROM nomtable ORDER BY id DESC LIMIT 10

samedi 19 septembre 2009 à 18:25:45 | Re : VC++ MySql

isir

dans ma table, il n y a pas d id auto-incrémenté

voila ce que je veux faire:
(SELECT chps FROM table1 LIMIT(ROW(*)-n) , n) ORDER BY champs_ordr DESC;

mais, il y a un problème dans LIMIT(ROW(*)....


c bon

samedi 19 septembre 2009 à 19:32:32 | Re : VC++ MySql

racpp

Administrateur CodeS-SourceS

Un champ id auto-incrémenté, défini comme clé unique, est essentiel pour toute table MySQL (ou toute table tout court). Chaque nouvel enregistrement recoit un nouvel id qui n'est pas réutilisé même quand l'enregistrement correspondant a été supprimé. Il permet de faire beaucoup de choses impossibles autrement. Par exemple, il te permet de classer les enregistrements dans l'ordre avec lequel ils ont été saisis. Essaie de l'ajouter à ta table pour te simplifier les choses.

lundi 21 septembre 2009 à 23:23:52 | Re : VC++ MySql

Matt67


Euh, je ne suis pas d'accord. Un champ auto incrément n'est pas essentiel. Une clé primaire suffit mais ce n'est pas forcement un auto incrément.
J'ai une base qui contient la liste des phares en France et ma clé primaire est le numéro du phare. Pas de doublon et pas d'auto incrément.
Je ne vois pas l'intérêt non plus de savoir dans quel ordre les enregistrements ont été saisie !!! Le tri doit se faire alors sur un champ date par exemple.

Matt...

mardi 22 septembre 2009 à 00:50:03 | Re : VC++ MySql

racpp

Administrateur CodeS-SourceS

Matt67 >> Seul un champ id auto-incrémenté garantit l'unicité de l'enregistrement. Supposons que ce numéro de phare sera utilisé comme clé étrangère par une autre table. Cette dernière contiendra par exemple des données sur les différentes opérations d'entretien subies par chaque phare. Imaginons que les données pour un numéro de phare ont été saisies dans cette table, puis on se rend-compte que le numéro entré dans la première table était erroné et qu'il faudra le corriger. On sera obligé de corriger également tous les enregistrements faisant référence à ce numéro dans la deuxième table. Ce n'est qu'un exemple.
Le tri par ordre de saisie est très utile et je m'en sert souvent. Il permet de retrouver facilement par exemple les derniers enregistrements saisis afin de les revoir pour une éventuelle mise à jour des données. Un champ date ne permet pas de les trier correctement car plusieurs enregistrements peuvent avoir la même date. Même un champ date-heure ne suffit pas car pendant un import de données par exemple seul l'id auto-incrémenté permettra de différencier l'ordre d'ajout des enregistrements. Pareil pour les données entrées dans une base en multi-utilisateurs.
Avec un id auto-incrémenté les choses deviennent nettement plus simples et plus efficaces pour l'intégrité et l'optimisation de la base.

samedi 26 septembre 2009 à 21:44:00 | Re : VC++ MySql

Matt67

Pour le premier cas, il y a les contraintes de clef étrangère et/ou aussi une clef unique sur le numéro des phares.
Pour récupérer les dernières données insérées, d'accord tu passes par ton auto incrément mais quand je veux faire une mise à jour, par exemple de ma base de phares, je me souviens plus de son nom que de son id. Ce n'est qu'un exemple...

Matt...

dimanche 27 septembre 2009 à 14:48:09 | Re : VC++ MySql

racpp

Administrateur CodeS-SourceS

Les contraintes n'empêcheront pas de se tromper dans la saisie d'un numéro de phare défini comme clé unique primaire dans la table des numéros. Au lieu de 11 par exemple on pourrait saisir 111 et ça pourrait passer. Après ajout, dans l'autre table, d'enregistrements se reférant à ce numéro erroné la correction de ce dernier dans sa table nécessiterait la correction de toutes ses références dans l'autre table. Je ne connais pas de contrainte pouvant faire une chose pareille dans un SGBD. De toute façon ce n'est pas du tout optimisé.
L'id auto-incrémenté n'est pas fait pour être manipulé ni même vu par l'utilisateur. Il est géré par le SGBD et exploité en interne par notre application. Tu peux toujours regarder les noms et autres mais c'est grâce à son id auto-incrémenté que l'application identifiera de manière unique un enregistrement.

dimanche 24 avril 2011 à 15:17:39 | Re : VC++ MySql

hedouda

bjr a tous s'il vous plait je veut établir une connexion entre le Visual Studio et mysql j'ai installé le connecteur mais j'ai encore pas arriver a faire la liaison entre Visual studio 2008 express édition étant donnée que j'ai ajouter la référence. lorsque je clique sur se connecter a une base dans l'onglet source de donnée Mysql se s'affiche pas il y a seulement de l'accès et sql serveur .
Svp c'est urgent :(((


Cette discussion est classée dans : mysql, vc


Répondre à ce message

Sujets en rapport avec ce message

c++ avec mysql , et vc++ ! [ par spidsl ] Bonjour, bon, voila, j'aimerais me connecter à une base mysql qui est sur un serveur à partir d'un prog en c++. En fait, je voudrais gérer mon site (s [VC++ <-> MySQL] ??? [ par TontOnDuWeb ] salut les gens,voila , g voulu faire un ptit programme pour testé l'acces au base de donnée MySQL en c++, g commencer le projet sous Builder c++ 6, Conversion de lib VC++ en lib GCC [ par Nebula ] Salut à tous !Je cherche à me connecter sur un serveur MySQL pour accéder à une base de données (logique implacable...). MySQL 3.23 est livré avec des Connection a Mysql avec VC++ .net [ par dtscan ] Bonjour,Je souhaite me connecter a ma base mysql avec mes programmes développer sous VC++ .Net. Sous VC++ 6, je n'avais pas de problème, j'utilisais A probleme au link avec VC++ [ par marc hash ] salut a tous,j'ai un probleme a la compilation d'un de mes programmes sur Visual C++ 6.mon programme est lié a une base de donnée réalisée a l'aide de Installation de l'API mysql++ pour VC++ 2005 [ par Jary ] Bonjour,Je souhaite installer l'API mysql++ pour Visual C++ 2005 Express. J'ai télécharger le fichier de: http://tangentsoft.net/mysql++/Cependant, il VC++6 pb avec mysql_query insert [ par ebalexandr ] lu qq peu m aide j utilise VC++6 avec mysql et je veu inseré une valeur(int VAL) dans ma BdD je fait comme ca:int VAL = 69;char query[]={"INS MSQL C++ blem de biblio [ par rabbiwan ] salutj'ai un blem de connexion mysql vc++.lorsque je compile le compilo me dit des erreurs lier a ostream et je ne c pas comment les résoudres la phra connexion a mysql depuis microsoft VC++.net [ par theudd ] bonjour a tous. mon probleme consiste a faire un code pour avoir acces a une base de donnee mysql. la question a ete traite sur ce site pour VC++.6 ma VC++ et MySQL [ par rikichi ] Salut a vous ! je cherche un moyen pour acceder a une base de données MySQL avec biensur VC++ aidez moi SVP !


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales