Inhaltsverzeichnis
1. Die Header-Datei der MySQL-API muss enthalten sein
2 Spezifische Schritte zum Herstellen einer Verbindung zu MySQL
Der Eingabeparameter dieser Funktion ist der in Schritt (3) zurückgegebene Ergebnissatz. Bei jedem Aufruf wird die nächste Datenzeile in der Ergebnismenge zurückgegeben und der Zeiger um eine Zeile nach hinten verschoben. Wenn keine nächste Datenzeile vorhanden ist, wird NULL zurückgegeben.
Heim Datenbank MySQL-Tutorial So stellen Sie eine Verbindung zur MySQL-Datenbank her und lesen Daten in C++

So stellen Sie eine Verbindung zur MySQL-Datenbank her und lesen Daten in C++

Jun 03, 2023 am 09:05 AM
mysql c++

    1. Die Header-Datei der MySQL-API muss enthalten sein

    Wenn Sie eine Verbindung zur lokalen MySQL-Datenbank herstellen müssen, muss die MySQL-Datenbank lokal installiert sein. Hier werden einige MySQL-APIs verwendet, z. B. das Herstellen einer Verbindung zur Datenbank, das Ausführen von Abfrageanweisungen und andere Vorgänge. Diese Schnittstellen sind in den folgenden Headerdateien enthalten:

    #include <mysql/mysql.h>
    Nach dem Login kopieren

    2 Spezifische Schritte zum Herstellen einer Verbindung zu MySQL

    Dies kann grob unterteilt werden Vier Hauptschritte:

    1. Stellen Sie eine Verbindung zur MySQL-Datenbank her

    Wenn Sie die Daten in MySQL-Daten abrufen möchten, müssen Sie natürlich zuerst eine Verbindung zur Datenbank herstellen und ein Handle erhalten, das das bedienen kann Datenbank.

    2. Führen Sie die Abfrageanweisung aus, dh wählen Sie die von uns benötigten Daten aus.

    dient dazu, die Abfrageanweisung auszuführen und die von uns benötigten Daten abzufragen. Die abgefragten Daten werden an einem Ort gespeichert, der als Ergebnismenge bezeichnet wird.

    3. Rufen Sie die erforderlichen Daten aus dem Ergebnissatz ab.

    Verwenden Sie die entsprechenden Schnittstellenfunktionen, um die Daten jeder Zeile und jedes Felds im Ergebnissatz abzurufen.

    4. Extrahieren Sie die Informationen jedes Felds in jeder Zeile aus dem Ergebnissatz. 5. Geben Sie Ressourcen frei, einschließlich des MySQL-Handles des Ergebnissatzes. Im Folgenden finden Sie eine detaillierte Erläuterung mehrerer wichtiger Schnittstellenfunktionen, die verwendet werden müssen.

    2.1 mysql_real_connect

    Diese Funktion wird verwendet, um eine Verbindung zur Datenbank-Engine herzustellen, die auf dem Host ausgeführt wird. Wenn die Verbindung erfolgreich ist, wird ein Handle abgerufen, mit dem die Datenbank betrieben werden kann. Andernfalls wird ein NULL-Zeiger zurückgegeben.

    MYSQL *mysql_real_connect(MYSQL *mysql, 
    						const char *host, 
    						const char *user, 
    						const char *passwd, 
    						const char *db, 
    						unsigned int port, 
    						const char *unix_socket, 
    						unsigned long client_flag
    						)
    Nach dem Login kopieren

    Diese Funktion hat viele Parameter und die Bedeutung jedes Parameters ist wie folgt:

    mysql

    : Es ist die Adresse der vorhandenen MYSQL-Struktur. Vor dem Aufruf von mysql_real_connect() muss mysql_init() aufgerufen werden, um die MYSQL-Struktur zu initialisieren.

    • host: ist der Hostname oder die IP-Adresse. Wenn „host“ NULL oder die Zeichenfolge „localhost“ ist, wird die Verbindung als Verbindung zu localhost behandelt.

    • Benutzer: Die MySQL-Anmelde-ID des Benutzers. Wenn „user“ NULL oder die leere Zeichenfolge „“ ist, wird der Benutzer als aktueller Benutzer betrachtet.

    • passwd: Passwort des Benutzers. Wenn „passwd“ NULL ist, werden nur Einträge in der Benutzertabelle des Benutzers (die ein leeres Passwortfeld haben) auf eine Übereinstimmung überprüft.

    • db: ist der Datenbankname. Wenn db NULL ist, setzt die Verbindung die Standarddatenbank auf diesen Wert.

    • Port: Wenn „Port“ nicht 0 ist, wird sein Wert als Portnummer für die TCP/IP-Verbindung verwendet. Beachten Sie, dass der Parameter „host“ die Art der Verbindung bestimmt.

    • unix_socket: Wenn unix_socket nicht NULL ist, beschreibt diese Zeichenfolge den Socket oder die Named Pipe, die verwendet werden soll. Beachten Sie, dass der Parameter „host“ die Art der Verbindung bestimmt.

    • client_flag: Der Wert ist normalerweise 0

    • 2.2 mysql_query oder mysql_real_queryDiese Funktion wird verwendet, um einen Abfragebefehl an die Datenbank zu senden und ihn von der Datenbank ausführen zu lassen. Die Rückgabe von 0 zeigt an, dass die Abfrage erfolgreich war, andernfalls schlägt sie fehl.

      int mysql_query(MYSQL *mysql, const char *stmt_str)
      Nach dem Login kopieren
    • oder:
    int
    mysql_real_query(MYSQL *mysql,
                     const char *stmt_str,
                     unsigned long length)
    Nach dem Login kopieren

    MySQL: ist das MySQL-Operationshandle, das über erhalten wird.

      stmt_str: Gibt die Abfrageanweisung an, die ausgeführt werden muss.
    • Länge: ist die Länge der Abfrageanweisung.
    • Der Unterschied zwischen den beiden oben genannten Funktionen ist:
    • mysql_query () kann nicht zum Ausführen von Binäranweisungen verwendet werden, dh der Parameter stmt_str darf keine Binärdaten enthalten und wird in Zeichen analysiert.

      mysql_query ist etwas langsamer, da die Länge der Abfrageanweisung berechnet werden muss
    • 2.3 Holen Sie sich die Ergebnismenge mysql_store_result
    • Diese Funktion gibt die Ergebnismenge zurück, wenn die Abfrage erfolgreich ist. Wenn sie fehlschlägt, gibt sie NULL zurück

      MYSQL_RES *mysql_store_result(MYSQL *mysql)
      Nach dem Login kopieren
    • 2.4 Zeigt den Ergebnissatz jeder Datenzeile an

    Der Eingabeparameter dieser Funktion ist der in Schritt (3) zurückgegebene Ergebnissatz. Bei jedem Aufruf wird die nächste Datenzeile in der Ergebnismenge zurückgegeben und der Zeiger um eine Zeile nach hinten verschoben. Wenn keine nächste Datenzeile vorhanden ist, wird NULL zurückgegeben.

    Sie können mysql_num_fields(result) verwenden, um die Anzahl der Zeilen in der Ergebnismenge zu berechnen, und mysql_num_fields(result), um die Anzahl der Spalten zu berechnen. Wenn Zeile die Informationen einer bestimmten Zeile sind, dann Zeile[0], Zeile[1]. . . Alle Feldinformationen der Zeile.

    MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)
    Nach dem Login kopieren

    3. Ein Programmierbeispiel

    Die Umgebung hier ist ein Linux-System. Der Name der verwendeten lokalen Datenbank lautet „CrashCourse“ und der Name der Abfragetabelle lautet „products“. Das folgende Programmierbeispiel zeigt die Abfrage aller Artikel mit einem Preis über 30 in der Produkttabelle. Der vollständige Inhalt der Produkttabelle lautet wie folgt:


    #include 
    #include <mysql/mysql.h>
    #include 
    using namespace std;
     
    MYSQL mysql;  //mysql连接
    MYSQL_RES* res; //结果集结构体   
    MYSQL_ROW row; //char** 二维数组,存放记录  
     
    int main()
    {	
    	// 步骤1: 初始化并连接数据库,获得操作数据库的句柄
    	mysql_init(&mysql);    //初始化
    	if (!(mysql_real_connect(&mysql, "localhost", "root", "root", "CrashCourse", 0, NULL, 0))) {
    		cout << "Couldn't connect to Database!\n : " << mysql_error(&mysql);
    		exit(1);
    	}
    	else {
    		printf("Database connection succeeded. Connected...\n\n");
    	}
    	// 步骤2: 执行查询语句,查询需要的数据(设置编码格式也相当于执行特殊的查询语句)
    	mysql_query(&mysql, "set names gbk"); // 设置编码格式
    	mysql_query(&mysql, "SELECT * from products where prod_price > 30");
     
    	// 步骤3:获取结果集
    	res = mysql_store_result(&mysql);
    	// 步骤4:显示结果集中每行数据
        int cols = mysql_num_fields(res); // 计算结果集中,列的个数
    	while (row = mysql_fetch_row(res)) {
        
        	for (int i = 0; i < cols; ++i) {
          		cout << row[i] << "\t";
        	}
        	cout << endl;
    	}
     	// 步骤5:释放结果集合mysql句柄
    	mysql_free_result(res);
    	mysql_close(&mysql);
     return 0;
     
    }
    Nach dem Login kopieren
    Die Abfrageergebnisse lauten wie folgt:

    So stellen Sie eine Verbindung zur MySQL-Datenbank her und lesen Daten in C++

    Das obige ist der detaillierte Inhalt vonSo stellen Sie eine Verbindung zur MySQL-Datenbank her und lesen Daten in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    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

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    AI Hentai Generator

    AI Hentai Generator

    Erstellen Sie kostenlos Ai Hentai.

    Heißer Artikel

    R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
    1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Beste grafische Einstellungen
    1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
    1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Chat -Befehle und wie man sie benutzt
    1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

    MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

    Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

    MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

    Die fortgesetzte Verwendung von C: Gründe für seine Ausdauer Die fortgesetzte Verwendung von C: Gründe für seine Ausdauer Apr 11, 2025 am 12:02 AM

    C Gründe für die kontinuierliche Verwendung sind seine hohe Leistung, breite Anwendung und sich weiterentwickelnde Eigenschaften. 1) Leistung mit hoher Effizienz. 2) weit verbreitete: Glanz in den Feldern der Spieleentwicklung, eingebettete Systeme usw. 3) Kontinuierliche Entwicklung: Seit seiner Veröffentlichung im Jahr 1983 hat C weiterhin neue Funktionen hinzugefügt, um seine Wettbewerbsfähigkeit aufrechtzuerhalten.

    Mysqls Platz: Datenbanken und Programmierung Mysqls Platz: Datenbanken und Programmierung Apr 13, 2025 am 12:18 AM

    Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

    Python vs. C: Anwendungen und Anwendungsfälle verglichen Python vs. C: Anwendungen und Anwendungsfälle verglichen Apr 12, 2025 am 12:01 AM

    Python eignet sich für Datenwissenschafts-, Webentwicklungs- und Automatisierungsaufgaben, während C für Systemprogrammierung, Spieleentwicklung und eingebettete Systeme geeignet ist. Python ist bekannt für seine Einfachheit und sein starkes Ökosystem, während C für seine hohen Leistung und die zugrunde liegenden Kontrollfunktionen bekannt ist.

    Lösung für MySQL begegnet 'Zugriff für Benutzer' Problem Lösung für MySQL begegnet 'Zugriff für Benutzer' Problem Apr 11, 2025 pm 05:36 PM

    So lösen Sie den MySQL -Zugriff für Benutzer "Fehler: 1. Überprüfen Sie die Berechtigung des Benutzers, eine Verbindung zur Datenbank herzustellen. 2. Setzen Sie das Passwort zurück; 3.. Remote -Verbindungen zulassen; 4. Erfrischungsberechtigungen; 5. Überprüfen Sie die Datenbankserverkonfiguration (Bind-Address, Skip-Grant-Tabellen). 6. Überprüfen Sie die Firewall -Regeln; 7. Starten Sie den MySQL -Dienst neu. TIPP: NACHTEN ALDEN, ABER DIE DATABASE.

    So stellen Sie eine Verbindung zur Datenbank von Apache her So stellen Sie eine Verbindung zur Datenbank von Apache her Apr 13, 2025 pm 01:03 PM

    Apache verbindet eine Verbindung zu einer Datenbank erfordert die folgenden Schritte: Installieren Sie den Datenbanktreiber. Konfigurieren Sie die Datei web.xml, um einen Verbindungspool zu erstellen. Erstellen Sie eine JDBC -Datenquelle und geben Sie die Verbindungseinstellungen an. Verwenden Sie die JDBC -API, um über den Java -Code auf die Datenbank zuzugreifen, einschließlich Verbindungen, Erstellen von Anweisungen, Bindungsparametern, Ausführung von Abfragen oder Aktualisierungen und Verarbeitungsergebnissen.

    Navicats automatische Sicherung von MySQL -Daten Navicats automatische Sicherung von MySQL -Daten Apr 11, 2025 pm 05:30 PM

    Schritte zur automatischen Sicherung von MySQL -Daten mit Navicat: Installieren und Verbindung zum MySQL -Server. Erstellen Sie eine Sicherungsaufgabe, wobei die Sicherungsquelle, der Dateispeicherort und der Name angegeben werden. Konfigurieren Sie Sicherungsoptionen, einschließlich Sicherungstyp, Frequenz und Aufbewahrungszeit. Richten Sie einen automatischen Backup -Plan ein, aktivieren Sie automatische Sicherung, setzen Sie Zeit und Frequenz. Vorschau der Sicherungseinstellungen und die Sicherung durchführen. Überwachung des Sicherungsfortschritts und der Geschichte.

    See all articles