Heim >Datenbank >MySQL-Tutorial >So verbinden Sie VC mit der MySQL-Datenbank

So verbinden Sie VC mit der MySQL-Datenbank

藏色散人
藏色散人Original
2020-10-26 09:48:442926Durchsuche

So verbinden Sie die MySQL-Datenbank mit vc: Öffnen Sie zuerst VC6, fügen Sie dann den Include-Verzeichnispfad des lokal installierten MySQL hinzu und wählen Sie dann „Bibliotheksdateien“ aus Testen.

So verbinden Sie VC mit der MySQL-Datenbank

Empfohlen: „MySQL-Video-Tutorial

1. MySQL-Installation

Die MySQL-Installation kann von der offiziellen Website heruntergeladen werden. . . Die neueste Version ist Version 5.7. .

2. VC6.0-Einstellungen

(1) Wählen Sie die Option 0 Optionen im Menü „Extras“ der Symbolleiste und die Dropdown-Liste „Verzeichnisse anzeigen für:“ auf der rechten Seite die Registerkarte „Verzeichnisse“ Fügen Sie dann unter „Includefiles“ den Include-Verzeichnispfad Ihrer lokalen MySQL-Installation in das mittlere Listenfeld ein. Wie im Bild gezeigt:

(2) Wählen Sie „Bibliotheksdateien“ in der oben genannten Dropdown-Liste „Verzeichnisse anzeigen für:“ und fügen Sie dann den Lib-Verzeichnispfad Ihres lokalen MySQL hinzu Installation. Wie im Bild gezeigt:

** Ich möchte hier erklären: Vorsichtige Leute werden feststellen, dass sich mein Verzeichnis von dem im vorherigen Bild unterscheidet. Dies liegt an diesem Fehler: libmysql.lib : Schwerwiegender Fehler LNK1113: Ungültiger Computer Ungültiger Server

Dies liegt daran, dass vc 32-Bit-Programme entwickelt und die MySQL-Datenbank 64-Bit ist. Wenn Sie ein 32-Bit-Programm verwenden, um eine 64-Bit-Datenbank zu betreiben, Sie werden auf jeden Fall einen Fehler machen. Ich werde es weiter unten erklären. In einem Blog-Beitrag wird ausführlich erklärt, wie Sie das Problem lösen können.

(3) Fügen Sie „libmysql.lib“ in „Projekteinstellungen->Link:Objekt-/Bibliotheksmodule“ hinzu. Schritt 5: Es wird empfohlen, „libmysql.lib, libmysql.dll“ in das von Ihnen erstellte Verzeichnis zu kopieren.
Diese beiden Dateien befinden sich im Verzeichnis D:Mysqllib.
3. Programmierimplementierung

1. Ein einfaches kleines Programm, um zu sehen, ob die Verbindung erfolgreich sein kann. . .

#include <stdio.h>
#include <windows.h>
#include <mysql.h> 

int main()
{

       MYSQL mysql;
       mysql_init(&mysql); //初始化mysql结构

       if(!mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0))
              printf("\n连接数据库时发生错误!\n");
       else
              printf("\n连接数据库成功!\n");

       mysql_close(&mysql); //释放数据库
  
       return 0;
}

mysql_real_connect(&mysql,“localhost“,myuser“,123456“,student_db“,3306,NULL,0)//myuser ist mein Benutzername, „123456“ ist das Passwort, „student_db“ ist die Datenbank , 3306 ist die Portnummer

2. Implementieren Sie das Abfrage-Applet

// test.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
#include <windows.h>
#include "StdAfx.h"

#include <winsock.h>  
#include <iostream>  
#include <string>  
#include <mysql.h>  
using namespace std;  
//不需要单步调试的就注释掉  
//#define STEPBYSTEP  
  
void pause(){  
  
    #ifdef STEPBYSTEP  
        system("pause");  
    #endif  
}  
void writeToFile(const char *s)  
{  
  
     FILE *fp=fopen("info.txt","rw");  
     fprintf(fp,s);  
     fclose(fp);  
  
}  
 /* int main()

{

       MYSQL mysql;
       mysql_init(&mysql); //初始化mysql结构

       if(!mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0))
              printf("\n连接数据库时发生错误!\n");
       else
              printf("\n连接数据库成功!\n");

       mysql_close(&mysql); //释放数据库
  
       return 0;
}*/
int main(int argc, char* argv[]){  
  
    cout<<"start...."<<endl;  
    pause();  
    MYSQL mysql;  
    if(0==mysql_library_init(0,NULL,NULL))  
    {  
        cout<<"mysql_library_init succeed"<<endl;  
  
    }else{  
        cout<<"mysql_library_init failed"<<endl;  
        return -1;  
    }  
    pause();  
    if(NULL!=mysql_init(&mysql))  
    {  
  
        cout<<"mysql_init succeed"<<endl;  
    }else{  
        cout<<"mysql_init failed"<<endl;  
        return -1;  
    }  
    pause();  
    if(0==mysql_options(&mysql,MYSQL_SET_CHARSET_NAME,"gb2312"))  
    {  
  
        cout<<"mysql_option succeed"<<endl;  
    }else{  
        cout<<"mysql_option failed"<<endl;  
        return -1;  
    }  
    pause();  
  
    if(NULL!=mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0))  
    {  
  
        cout<<"mysql_real_connect succeed"<<endl;  
    }else{  
        cout<<"mysql_real_connect failed"<<endl;  
        return -1;  
    }  
    pause();  
    string sql;  
    
    sql="select * from sgroup";  
    MYSQL_RES *result=NULL;  
    if(0==mysql_query(&mysql,sql.c_str()))  
    {  
  
            cout<<"mysql_query select succeed"<<endl;  
            result=mysql_store_result(&mysql);  
            int rowcount=mysql_num_rows(result);  
            cout<<"row count:"<<rowcount<<endl;  
            unsigned int fieldcount=mysql_num_fields(result);  
            MYSQL_FIELD *field=NULL;  
            for(unsigned int i=0;i<fieldcount;i++)  
            {  
  
                field=mysql_fetch_field_direct(result,i);  
                cout<<field->name<<"\t\t";  
            }  
            cout<<endl;  
            MYSQL_ROW row=NULL;  
            row=mysql_fetch_row(result);  
            while(NULL!=row)  
            {  
  
                for(int i=0;i<fieldcount;i++){  
  
                    cout<<row[i]<<"\t\t";  
  
                }  
                cout<<endl;  
                row=mysql_fetch_row(result);  
  
            }  
    }else{  
  
            cout<<"mysql_query select data failed"<<endl;  
            mysql_close(&mysql);  
            return -1;  
    }  
    pause();  
    /*sql="drop table user_info";  
    if(0==mysql_query(&mysql,sql.c_str()))  
    {  
  
            cout<<"mysql_query drop table succeed"<<endl;  
    }else{  
            cout<<"mysql_query drop table failed"<<endl;  
            mysql_close(&mysql);  
            return -1;  
  
    }  */
    mysql_free_result(result);  
    mysql_close(&mysql);  
    mysql_server_end();  
  
  
    system("pause");  
    return 0;  
}

Laufergebnisse:

Die Verbindung ist erfolgreich. . Ha ha. .

Das obige ist der detaillierte Inhalt vonSo verbinden Sie VC mit der MySQL-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn