MySQL是一個流行的開源關系型數據庫管理系統,被廣泛應用于Web應用程序和其他數據驅動的應用中。
MySQL提供了多種編程語言的驅動程序,可以方便地與各種不同語言的應用程序集成。其中,C++驅動程序稱為cppconn,它是MySQL官方提供的C++ API,可用于連接MySQL數據庫并執行各種數據庫操作。
#include#include #include #include #include int main(void) { try { sql::Driver* driver; sql::Connection* con; sql::Statement* stmt; /* 創建MySQL連接 */ driver = get_driver_instance(); con = driver->connect("tcp://127.0.0.1:3306", "root", "password"); con->setAutoCommit(false); /* 創建表格 */ stmt = con->createStatement(); stmt->execute("DROP TABLE IF EXISTS test"); stmt->execute("CREATE TABLE test(id INT, name VARCHAR(20))"); delete stmt; /* 插入數據 */ stmt = con->createStatement(); stmt->execute("INSERT INTO test(id, name) VALUES(1, 'foo')"); stmt->execute("INSERT INTO test(id, name) VALUES(2, 'bar')"); con->commit(); delete stmt; /* 查詢數據 */ stmt = con->createStatement(); sql::ResultSet* res = stmt->executeQuery("SELECT * FROM test"); while (res->next()) { std::cout<< "id: "<< res->getInt("id")<< ", name: "<< res->getString("name")<< "\n"; } delete res; delete stmt; /* 關閉MySQL連接 */ con->close(); delete con; } catch (sql::SQLException& e) { std::cerr<< "MySQL Error: "<< e.what()<< std::endl; } catch (std::runtime_error& e) { std::cerr<< "Error: "<< e.what()<< std::endl; } return 0; }
上述代碼演示了使用cppconn連接MySQL數據庫、創建表格、插入數據和查詢數據的過程。在使用cppconn時,需要包含使用方言包含的頭文件,然后創建驅動程序對象、連接對象和語句對象。通過語句對象可以執行各種SQL查詢,包括SELECT、INSERT、UPDATE和DELETE等。在使用完畢后,需要關閉連接和釋放對象。
總之,cppconn提供了一種靈活而高效的方式來連接MySQL數據庫,并集成到C++應用程序中。