IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

mysql et C " cherche un exemple de teste"


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 10
    Par défaut mysql et C " cherche un exemple de teste"
    salut je cherche un petite exemple en C qui se connect vers une bd mysql et affiche les resultat.
    ausis comment configure mon comilatuer pour acceder a cette base de donnée
    merci

  2. #2
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par prg12
    salut je cherche un petite exemple en C qui se connect vers une bd mysql et affiche les resultat.
    ausis comment configure mon comilatuer pour acceder a cette base de donnée
    merci
    Il faut installer la bibliothèque client mysql. Toutes les informations sont sur leur site...

  3. #3
    Membre éprouvé
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Par défaut
    j'ai ce bout de code qui traine dans un coin (qui montre un peu comment se servir de la libmysql)
    c'est un vieux bout de code, que je garanti pas comme etant fonctionnel ...
    google sauras surement t'eclaircir les idées sur certaines fonctions de la libmysql.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    #include <stdio.h>
    #include <stdlib.h>
    #include <mysql/mysql.h>
    #ifdef WIN32
    #include <winsock.h>
     
    #elif defined(linux)
     
    #endif
     
    MYSQL *
    do_mysql_connect (char *host_name, char *user_name, char *password,
    		  char *db_name, unsigned int port_num, char *socket_name,
    		  unsigned int flags)
    {
      MYSQL *conn;			/* pointer to connection handler */
     
      conn = mysql_init (NULL);	/* allocate, initialize connection handler */
      if (conn == NULL)
        {
          fprintf (stderr, "mysql_init() failed\n");
          return (NULL);
        }
      if (mysql_real_connect (conn, host_name, user_name, password,
    			  db_name, port_num, socket_name, flags) == NULL)
        {
          fprintf (stderr, "mysql_real_connect() failed:\nError %u (%s)\n",
    	       mysql_errno (conn), mysql_error (conn));
          return (NULL);
        }
      return (conn);		/* connection is established */
    }
     
    void
    print_infos (MYSQL_RES * res, int num_rows)
    {
      MYSQL_ROW row;
      unsigned int num_fields;
      unsigned int j = 0;
      unsigned long *lengths;
      num_fields = mysql_num_fields (res);
      while ((row = mysql_fetch_row (res)))
        {
          lengths = mysql_fetch_lengths (res);
          int i;
          for (i = 0; i < num_fields; i++)
    	{
    	  printf ("[%.*s] ", (int) lengths[i], row[i] ? row[i] : "NULL");
    	}
          printf ("\n");
          j++;
        }
    }
     
    int
    main ()
    {
      char hostname[] = "somehost.com";
      char user_name[] = "someusername";
      char password[] = "somepass";
      char db_name[] = "my_db";
      unsigned int port = 64000, num_rows, i;
      char query[1024];
      MYSQL *conn = NULL;
      MYSQL_RES *res = NULL;
     
      conn = do_mysql_connect (hostname, user_name, password, db_name,
    			   port, NULL, 0);
      mysql_query (conn, "select champ1,champ2 from table");
      res = mysql_store_result (conn);
      if (res == NULL)
        {
          perror ("res is NULL");
          return EXIT_FAILURE;
        }
     
      num_rows = mysql_num_rows (res);
      print_infos (res, num_rows);
      snprintf (query, sizeof (query), "UPDATE table SET champs12 = 3");
      mysql_query (conn, query);
      mysql_free_result (res);
      mysql_close (conn);
     
      return EXIT_SUCCESS;
    }

  4. #4
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 10
    Par défaut mysql et c
    merci les mai pour vos reponse mais:
    je cherche un eput de detaille
    j'ai developper le programme qui accede a la bd reste a le tester sur un compilateur et sur mysqle serveur 5
    docn comment faite la configuration avce les moindre detaille
    c'est a dire comme deplacer les fichier dll .....etc.
    c sa mon problem.
    merci
    et a la prcohaine.

  5. #5
    Membre émérite Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Par défaut
    Citation Envoyé par prg12
    merci les mai pour vos reponse mais:
    je cherche un eput de detaille
    j'ai developper le programme qui accede a la bd reste a le tester sur un compilateur et sur mysqle serveur 5
    docn comment faite la configuration avce les moindre detaille
    c'est a dire comme deplacer les fichier dll .....etc.
    c sa mon problem.
    merci
    et a la prcohaine.
    Tu es dans un forum de C pas d'aide à l'installation d'un server MySQL...
    Sous linux il te suffit d'avoir libmysqlclient-dev pour que ton programme puisse compiler avec -lmysqlclient. Après au niveau du serveur il te suffit d'installer MySQL Server... Mais étant donné que tu parle de dll je suppose que tu es sous windows. EasyPHP permet l'installation d'un server MySQL facilement

  6. #6
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 10
    Par défaut
    salut

    oui ta raison mais comment configurre un compilateur C pour acceder a Mysql qui est installer par EasyPhp.
    aussi je veut acceder a une base de données avec un programme C sous winxp et avec mysqlserveur5.0.
    je cherche les configurations a faire et qel compilateur doit-je utiliser
    merci

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/01/2009, 18h53
  2. Cherche un exemple d'utilisation de TAction
    Par ssakhri dans le forum Delphi
    Réponses: 2
    Dernier message: 18/11/2006, 19h52
  3. PHP ou Perl: Cherche petit exemple tout con.
    Par fifto dans le forum Web
    Réponses: 15
    Dernier message: 28/03/2006, 21h35
  4. Je cherche un exemple de FocusListener...
    Par iMaTh dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 22/01/2006, 22h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo