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.
#include #include
Stellen Sie eine Datenbankverbindung her.
mysqlx::Session session("host", "port", "user", "password", "database");
Abfrageanweisungen erstellen.
std::string query = "SELECT * FROM table_name WHERE column_name = ?";
Binden Sie die Cin-Eingabe an Abfrageparameter.
mysqlx::PreparedStatement stmt = session.prepare(query); std::string input; std::cin >> input; stmt.bind("column_name", input);
Führen Sie die Abfrage aus.
mysqlx::Result res = stmt.execute();
Abfrageergebnisse abrufen.
for (auto row : res.fetchAll()) { std::cout << row[0].get() << std::endl; }
Verwendung von ODBC
Enthält die erforderlichen ODBC-Header-Dateien.
#include #include #include
Stellen Sie eine Datenbankverbindung her.
SQLHENV henv; SQLHDBC hdbc; SQLAllocEnv(&henv); SQLAllocConnect(henv, &hdbc); SQLDriverConnect(hdbc, nullptr, "DSN", SQL_NTS, nullptr, 0, nullptr, SQL_DRIVER_NOPROMPT);
SQL-Anweisungshandle erstellen.
SQLHSTMT hstmt; SQLAllocStmt(hdbc, &hstmt);
SQL-Anweisung festlegen.
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);
Cin-Eingabe an SQL-Anweisung binden.
std::string input; std::cin >> input; SQLSetParam(hstmt, 1, SQL_C_CHAR, input.c_str(), input.length(), nullptr);
SQL-Anweisungen ausführen.
SQLExecute(hstmt);
Abfrageergebnisse abrufen.
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; }
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!