Cin in C++ kann über eine Datenbankschnittstellenbibliothek (wie MySQL Connector/C++ oder ODBC) mit der Datenbank kombiniert werden. Zu den spezifischen Schritten gehören: Installieren der Datenbankschnittstellenbibliothek; Erstellen einer Abfrageanweisung; Ausführen der Abfrageergebnisse;
Kombination aus cin und Datenbank in C++
Verwenden Sie cin in C++, um Benutzereingaben über die Befehlszeile zu lesen, während die Datenbank zum Speichern und Verwalten von Daten verwendet wird. Um cin mit einer Datenbank zu kombinieren, müssen Sie eine Datenbankschnittstellenbibliothek (z. B. MySQL Connector/C++ oder ODBC) verwenden.
Mit MySQL Connector/C++
Fügen Sie die erforderlichen Header-Dateien in Ihren C++-Code ein.
<code class="cpp">#include <iostream> #include <mysqlx/xdevapi.h></code>
Stellen Sie eine Datenbankverbindung her.
<code class="cpp">mysqlx::Session session("host", "port", "user", "password", "database");</code>
Abfrageanweisungen erstellen.
<code class="cpp">std::string query = "SELECT * FROM table_name WHERE column_name = ?";</code>
Binden Sie die Cin-Eingabe an Abfrageparameter.
<code class="cpp">mysqlx::PreparedStatement stmt = session.prepare(query); std::string input; std::cin >> input; stmt.bind("column_name", input);</code>
Führen Sie die Abfrage aus.
<code class="cpp">mysqlx::Result res = stmt.execute();</code>
Abfrageergebnisse abrufen.
<code class="cpp">for (auto row : res.fetchAll()) { std::cout << row[0].get<std::string>() << std::endl; }</code>
Verwendung von ODBC
Enthält die erforderlichen ODBC-Header-Dateien.
<code class="cpp">#include <iostream> #include <sql.h> #include <sqlext.h></code>
Stellen Sie eine Datenbankverbindung her.
<code class="cpp">SQLHENV henv; SQLHDBC hdbc; SQLAllocEnv(&henv); SQLAllocConnect(henv, &hdbc); SQLDriverConnect(hdbc, nullptr, "DSN", SQL_NTS, nullptr, 0, nullptr, SQL_DRIVER_NOPROMPT);</code>
SQL-Anweisungshandle erstellen.
<code class="cpp">SQLHSTMT hstmt; SQLAllocStmt(hdbc, &hstmt);</code>
SQL-Anweisung festlegen.
<code class="cpp">std::string sql = "SELECT * FROM table_name WHERE column_name = ?"; SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, 0, 0, nullptr, 0, nullptr);</code>
Cin-Eingabe an SQL-Anweisung binden.
<code class="cpp">std::string input; std::cin >> input; SQLSetParam(hstmt, 1, SQL_C_CHAR, input.c_str(), input.length(), nullptr);</code>
SQL-Anweisungen ausführen.
<code class="cpp">SQLExecute(hstmt);</code>
Abfrageergebnisse abrufen.
<code class="cpp">SQLBindCol(hstmt, 1, SQL_C_CHAR, nullptr, 0, nullptr); while (SQLFetch(hstmt) == SQL_SUCCESS) { char buffer[1024]; SQLGetData(hstmt, 1, SQL_C_CHAR, buffer, sizeof(buffer), nullptr); std::cout << buffer << std::endl; }</code>
Das obige ist der detaillierte Inhalt vonSo kombinieren Sie Cin und Datenbank in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!