barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 27 juillet 2005 - 15 h 02 m 05 s |
|
|
Bonjour a tous,
Voila je dois développer une application utilisant une base de donnée...
le tout dois etre fait utilisant l'api WIN32 donc c/c++
Je recherche des tutoriaux ou exemples d'introduction...
Quel est le mieux : ODBC, MySQL, .. ?
J'attend vos réponses et avis
Merci, a plus
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 27 juillet 2005 - 19 h 23 m 21 s |
|
|
Alors, pour commencer, tu n'es pas obligé de programmer en C ou c++ (qui sont différents) pour faire des programmes Win32
Ensuite, ODBC et MySQL ne sont pas la même chose : ODBC est une couche logicielle permettant d'accéder à n'importe quelle base de données, alors que MySQL est un système de gestion de base de données.
Tout d'abord, donc, sous quelle base dois-tu tourner ?
Si tu utilises MySQL, je te suggère mysql++ ou mysqlwrapped qui sont des wrappers de l'API mysql en C++ ; j'ai testé mysqlwrapped et j'en suis bien content.
Pour le tuto, d'abord une question : tu as déjà fait du C++ ?
|
|
| |
Huile de fraise.
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 28 juillet 2005 - 15 h 18 m 59 s |
|
|
Oui bien sur je porgramme en c++, un de mes projet est ici d'ailleur :
http://forums.france-hardware.com/disc/gen/sujet-63780.html
un chat 3D, enfin bon, je n'est pas trop d'idée pour integrer une base de donnée dans un programme.
Je n'utilise pas de MFC, j'aime pas,donc tout en win32.
Donc tu as des infos ?
Merci encore
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 28 juillet 2005 - 15 h 45 m 32 s |
|
|
Et une autre question....
Admettons que j'utilise MySQL++, le truc est imaginons que le client instal pour la premiere foi le logiciel...
sa ne marchera pas, car il devra installé SQL sur son ordi...
Comment il marche les logiciels genre CIEL, ils utilisent des bases de données....
Enfin c'est un détail, mais quand même pas des moindres... si je dois me déplacer a chaqua foi pour chaque client pour installer SQL c'est pas top :s...
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 28 juillet 2005 - 18 h 44 m 19 s |
|
|
Ah mais tu changes la donne, là
Tu peux lier la bibliothèque MySLQ en statique, normalement - tu n'as pas besoin du moteur sur le client. Quand aux logiciels du genre de ceux de Ciel, ça m'étonnerait qu'il y ait juste l'exécutable dans le paquet, il doit bien y avoir quelques DLL...
Sinon, si tu as déjà fait du SQL, la doc de l'API de mysqlwrapped devrait suffire pour comprendre le fonctionnement : c'est pas très gros.
Quand à MySQL++, vu que c'est la bibliothèque proposée sur le site officiel de MySQL, il y a des forums un peu partout... Et une doc ici : http://tangentsoft.net/mysql++/doc/
Sinon, c'est sûr que tu peux faire ça en ODBC, ça t'apportera un peu plus de souplesse question moteur, mais en revanche il faut que le client correspondant à ta base soit installé sur la machine du client...
|
|
| |
Huile de fraise.
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 29 juillet 2005 - 14 h 57 m 01 s |
|
|
J'ai vue de la doc sur mysqlwrapped, est sa a vraiment l'aire super !!
Je pense que je vais commencer comme cela (pas de grande difference avec MySQL++ ?? )
J'ai pas trop compris se que tu voulais dire par "installer en static"....
Enfin en général, utiliser mySQL implique d'installer SQL sur la machine du client ?
Désolé je comprend pas tout  enfin surtout je ne veux pas me planter... car si je commence a utiliser un truc et que je change aprés ce sera pas le top...
Voila
Tu as déja fait des applications ? car tu a l'aire de bien connaitre
Merci pour tes réponses cela m'aide bcp !
a plus
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 29 juillet 2005 - 15 h 47 m 00 s |
|
|
Le 29 juillet 2005 - 14 h 57, barraq a écrit :
Désolé je comprend pas tout
|
Faudrait peut-etre commencer par les bases (c'est le cas de le dire) ?? Votre prof vous donne a faire ca sans aucun prealable ??
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 29 juillet 2005 - 17 h 04 m 37 s |
|
|
Bon, alors tout d'abord : la base de données, elle est centralisée, ou il y en a une sur chaque client ?
Si elle est centralisée, tu as juste besoin de la bibliothèque client (utilisée par mysqlwrapped/mysql++ - dont je pense (sans être sûr) qu'elles ont la même origine), que tu peux lier :
soit en dynamique, c'est-à-dire qu'il faudra que tu files mysql.dll avec ton client, soit en statique, donc le code de la DLL est inclus dans ton exécutable final.
Pour finir, oui, j'ai déjà travaillé sur une app qui utilise MySQL
|
|
| |
Huile de fraise.
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 29 juillet 2005 - 18 h 05 m 41 s |
|
|
| Faudrait peut-etre commencer par les bases (c'est le cas de le dire) ?? Votre prof vous donne a faire ca sans aucun prealable ?? |
ya pas de prof, c'est moi qui m'interesse a cela, donc j'ai pas de connaissance...
si juste comment l'utiliser en php, mais bon la c'est facile.
____________________________
1) La base de donnée n'est pas centralisée, une unique pour chaque client.
2) Pas besoin d'installer SQL pour ce cas la ? juste besoin :
- de la lib : .h et .c/c++
- la DLL de mysql
hum hum.... c'est vraiment bien alors
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 29 juillet 2005 - 18 h 25 m 09 s |
|
|
Hé ben si en fait
si la base n'est PAS centralisée, ça veut dire que tu as une base par client... Et donc un moteur, donc il faut installer MySQL sur chaque client.
Ce n'est donc pas la meilleure solution.
J'ai en revanche entendu parler de SQLite qui propose des solutions de bases de données embarquées, ce qui conviendrait mieux à ta situation, je pense. Je ne m'en suis jamais servi, mais tu devrais faire un tour sur http://www.sqlite.org/.
|
|
| |
Huile de fraise.
|
bernie38
Waldorf (le pote à Statler)
Messages : 11 421 Inscrit le 28/08/03
Ville : Claix
Non connecté
|
|
Posté le 29 juillet 2005 - 18 h 34 m 25 s |
|
|
question de curiosité malsaine : quel intérêt d'avoir une base de données par client ? C'est tout le contraire du principe de la base de données
|
|
| |
La Montagne n'est pas dangereuse : on ne peut qu'y perdre la vie, tandis qu'en ville on devient bête et méchant
Voltaire
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 29 juillet 2005 - 19 h 07 m 41 s |
|
|
Le 29 juillet 2005 - 18 h 05, barraq a écrit :
| Faudrait peut-etre commencer par les bases (c'est le cas de le dire) ?? Votre prof vous donne a faire ca sans aucun prealable ?? |
ya pas de prof, c'est moi qui m'interesse a cela, donc j'ai pas de connaissance...
si juste comment l'utiliser en php, mais bon la c'est facile.
|
J'ai suppose qu'il y avait un prof car tu as dit : "Je dois developper .."
Et ca la fout mal si tu dois le faire en environnement professionnel car tes posts ne presagent rien de bon
____________________________
1) La base de donnée n'est pas centralisée, une unique pour chaque client.
2) Pas besoin d'installer SQL pour ce cas la ? juste besoin :
- de la lib : .h et .c/c++
- la DLL de mysql
hum hum.... c'est vraiment bien alors 
|
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 30 juillet 2005 - 02 h 07 m 57 s |
|
|
C'est pour mettre quoi dedans, cette base ?
|
|
| |
Huile de fraise.
|
kha
Google is your best friend
Messages : 1 235 Inscrit le 01/03/02
Ville : Montreal
Non connecté
|
|
Posté le 30 juillet 2005 - 07 h 31 m 50 s |
|
|
http://cppfrance.com/
C est un example de site ou tu peux trouver, dans la categorie BD, plein d examples de codes source dont t aura besoin.
Mais fait attention car sur ce site il peut y avoir de tres bonnes ressources tout comme de tres mauvaises / dupliquees comme tout le monde poste librement.
|
|
| |
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 01 août 2005 - 16 h 33 m 31 s |
|
|
bon déjà :
"je dois ..."
Je dois dévellopper une logiciel pour une petite entreprise, c'est pas une truc de PRO. C'est un petit travail qui m'apprend plein de truc et qui en même temps rendrais service !
Mais dans tout les cas le logiciel compte bien simplifier la vie de cette entreprise qui fait tout a la main !!!
"une base par client"
par la je veux dire, une base de donnée par entreprise qui pourrais utiliser mon logiciel. Vue que les entreprises sont differentes ben bien sur elles n'ont pas la même base...
Dans les bases de données vont etre stocker :
client
commande
avec plein d'informations pour chaque clients et chaque commandes.
Donc l'application s'installe sur un PC et tourne que sur lui, elle n'utilise pas d'autre ressource externe (comme un DB paratgée...)
C'est un peu plus claire ?
Merci a tous
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 01 août 2005 - 16 h 54 m 27 s |
|
|
Est-ce que les bases existent déjà chez le client ? Si oui, alors comme tu pensais au début, tu peux envisager d'utiliser ODBC - je ne sais pas s'il y a des wrappers C++...
Si les bases n'existent pas, approfondis la solution SQLite.
|
|
| |
Huile de fraise.
|
barraq
Messages : 15 Inscrit le 13/04/05
Ville : Grenoble
Non connecté
|
|
Posté le 01 août 2005 - 16 h 59 m 31 s |
|
|
les bases n'existe pas encore, en fait si mais sur papier 
donc autant dire qu'elle n'existe pas....
Bon je regarde SQLite
merci
|
|
| |
ne perdez pas votre vie a la gagner !
http://nomind-world.com
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 01 août 2005 - 17 h 04 m 11 s |
|
|
N'hésite pas à donner des nouvelles, ça peut m'intéresser
|
|
| |
Huile de fraise.
|
onyx
Messages : 12 Inscrit le 05/04/06
Ville : Montreal
Non connecté
|
|
Posté le 19 avril 2006 - 23 h 48 m 23 s |
|
|
je fais un projet semblable que barrack, et je suis peut-etre au meme niveau que lui dans mes connaissance et j'ai pris le chemin de SQL sur mon application, d'apres ce que je lis, est ce que ca veux dire que mon application ne peux fonctionner que sur un ordinateur qui a SQL server d'installer comme je programme pour une BD SQL, si tel est le cas, qu'elle est la difference avec ODBC et où puis-je trouver de la doc a ce sujet ???
merci
|
|
| |
|
Petit_PimoOosE
rsqrtps & pshufb
Messages : 4 617 Inscrit le 15/06/03
Ville : Montréal
Non connecté
|
|
Posté le 20 avril 2006 - 01 h 15 m 20 s |
|
|
Alors voilà :
SQL Server, c'est le logiciel serveur, c'est lui qui gère et "contient" la base de données. Il n'y a besoin de l'installer et le faire tourner que sur un poste, très justement nommé "serveur"  . Note : ça pourrait très bien être aussi Oracle ou MySQL.
ODBC, c'est une couche logicielle intermédiaire entre le client de base de données et le serveur. Ton logiciel, qui accède à la base de données, peut donc utiliser ODBC. Il doit y avoir un pilote ODBC sur chaque client qui utilise ODBC.
Il y a d'autres approches, comme JDBC (pour Java) ou utiliser l'API ou un client natif du serveur. ODBC/JDBC est l'approche la plus portable, parce que c'est indépendant du modèle de serveur.
Pour finir, je vois que tu fais ça en VB, tu n'as donc pas besoin de savoir te servir directement d'ODBC, puisqu'une autre couche intermédiaire est rajoutée (ADO).
À mon sens, ce que tu as le plus besoin de savoir, c'est
- Comment monter ton serveur (si c'est à toi de le faire, faut-il le préciser)
- Comment (bien) utiliser VB et ADO, le premier intégrant le second de façon particulièrement efficace (enfin, c'était le cas dans VB6)
- Un peu de SQL aussi, ça ne fait pas de mal
Pour tout ça, traîne sur la MSDN (pour VB, ODBC et ADO) et le site du logiciel serveur de BD, en général, ils font ça plutôt bien (tant MySQL qu'Oracle en tout cas).
Voilà, bon départ !
|
|
| |
Message édité 1 fois, la dernière par Petit_PimoOosE le 20 avril 2006 - 01 h 16. |
| |
Huile de fraise.
|