Connexion à SQL server par Visual C++

Connexion à SQL server par Visual C++ - C - Programmation

Marsh Posté le 21-04-2005 à 19:46:07    

J'aimerais pouvoir connecter mon programme écrit en C que j'ai développé sous Visual C++ avec ma base de données sous SQL server 2000. Je parviens parfaitement à connecter mon environnement à ma base (je peux gérer mes tables par VC++). Seulement je ne sais pas après comment, dans mon code, je dois me connecter à ma base.
Je n'ai malheuresement trouvé aucun tutorial dessus, j'ai regardé sur MSDN d'après ce que j'ai vu, les moyens de connexion proposés sont en C++ et non en C [:huit]  
 
Bref, quels sont le ou les moyens qui pourraient me permettre de connecter mon programme en C avec une base de données sous MSSQL ?
Marchi  :jap:

Reply

Marsh Posté le 21-04-2005 à 19:46:07   

Reply

Marsh Posté le 22-04-2005 à 17:01:20    

J'ai tenté d'include differentes librairies présentes dans mon répertoire vc++ mais j'ai des erreurs :(
 
En incluant :
#include <sql.h>
#include <sqlext.h>
 
J'obtiens des erreurs de syntaxe dans sqlext.h, sqlucode.h et sqltypes.h

Reply

Marsh Posté le 22-04-2005 à 17:20:19    

Pour se connecter a une base de données et lancer des requetes, voila la demarche a suivre en C
 

Code :
  1. #include <mysql/mysql.h>
  2. MYSQL *conn =NULL;
  3. MYSQL *erreur;
  4. MYSQL_RES *res;
  5. MYSQL_ROW row;
  6. const char *host;
  7. const char *user;
  8. const char *passwd;
  9. const char *db;
  10. unsigned int port;
  11. const char *unix_socket;
  12. unsigned long client_flag = 0;
  13. int t;
  14. int r;
  15. host        = "127.0.0.1"; //url
  16. user        = "root"; //user id
  17. passwd      = NULL; //password
  18. db          = "david"; //pool de database
  19. port        = 3306; //port
  20. unix_socket = NULL;
  21. char query[100] = "select ... from ... "; //requete SQL
  22. /*initialisation de la connection*/
  23. if((conn = mysql_init(NULL))==NULL)
  24. {
  25.   printf("Not enough memory\n" );
  26.   exit(-1);
  27. }
  28. /*connection a la database*/       
  29. if((erreur=mysql_real_connect(conn,host,user,passwd,db,port,unix_socket,client_flag))==NULL)
  30. {
  31.   printf("Server connexion failed\n" );
  32.   printf("cause : %s\n",mysql_error(conn));
  33.   exit(1);
  34. }
  35. /*lancement de la requete*/     
  36. t=mysql_real_query(conn,query,(unsigned int) strlen(query));
  37. if (t)
  38. {
  39.   printf("Error making query: %s\n",
  40.   mysql_error(conn));
  41. }
  42. /*recuperation du resultat*/       
  43. res=mysql_use_result(conn);
  44.    
  45. /*parcours des resultats*/ 
  46. for(r=0;r<mysql_field_count(conn);r++){
  47.     row=mysql_fetch_row(res);
  48.     if(row<0) break;
  49.     for(t=0;t<mysql_num_fields(res);t++){
  50.       printf("%s",row[t]);
  51.     }
  52. }
  53. mysql_close(conn);
  54. }


---------------
-= RAK =-
Reply

Marsh Posté le 22-04-2005 à 17:30:17    

Mais j'utilise mssql, je ne trouve aucune librairie du style mssql.h
 
Normalement je ne devais avoir aucun problème avec sql.h ?

Reply

Marsh Posté le 22-04-2005 à 20:35:04    

Rak111 a écrit :

Pour se connecter a une base de données et lancer des requetes, voila la demarche a suivre en C


ouais enfin bon, tu nous présentes une méthode pour se connecter à MySQL en C, alors qu'il veut se connecter à SQL Server en C++ :sarcastic:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 22-04-2005 à 21:01:41    

Relis bien le message d'origine. Le programme est écrit en C.
Par contre je connais pas MSSQL, je croyais donc que c'etait du MYSQL. Desolé.

Reply

Marsh Posté le 23-04-2005 à 12:27:27    

ouais je veux connecter mon C à un MSSQL. C'est quand même dingue que je ne trouve strictement rien à ce sujet :(
Personne n'a une idée vers laquelle m'orienter ?

Reply

Marsh Posté le 23-04-2005 à 12:41:06    

Sinan a écrit :

ouais je veux connecter mon C à un MSSQL. C'est quand même dingue que je ne trouve strictement rien à ce sujet :(
Personne n'a une idée vers laquelle m'orienter ?


T'aurais plus de chances sur un forum Windows et/ou SGBD. Mais si l'interface est exclusivement en C++ (j'en doute, mais pourquoi pas), aucune chance de pouvoir l'utiiser en C...
 
Le site de développement de Microsoft
 
http://search.microsoft.com
 
La partie "SGBD/SQL" de Hardware.fr
 
http://forum.hardware.fr/hardwaref [...] _sujet.htm
 
La partie 'Windows' de 'Développez'
 
http://www.developpez.net/forums/viewforum.php?f=4
 
La partie 'Base de données' de 'Développez'
 
http://www.developpez.net/forums/viewforum.php?f=27
et les sous forums qui vont avec...


Message édité par Emmanuel Delahaye le 23-04-2005 à 12:41:33

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed