在 Web 開發領域,通常需要存取和操作資料庫中的資料。 C 提供了強大的連接和查詢資料庫的功能。在本文中,我們將深入研究如何使用 C 語言與 MySQL 資料庫建立連接,並透過實際程式碼範例示範流程。
要連接到MySQL 資料庫,您需要滿足以下先決條件:
建立與資料庫的連線是存取資料的第一步。 MySQL Connector/C 函式庫提供了建立連線所需的類別和函數。以下程式碼片段示範了該過程:
<code class="cpp">sql::Driver *driver; sql::Connection *con; driver = get_driver_instance(); con = driver->connect("tcp://127.0.0.1:3306", "root", "root");</code>
在此程式碼中,driver 是驅動程式類別的實例,con 是連接對象,get_driver_instance() 從庫中擷取驅動程式實例。使用 connect 函數開啟連接,該函數將主機、使用者名稱和密碼作為參數。
建立連線後,您可以指定要使用的資料庫架構想要合作。模式是資料庫中物件(表格、檢視等)的邏輯集合。若要設定架構,請使用下列程式碼:
<code class="cpp">con->setSchema("test");</code>
在此範例中,我們使用「測試」架構,但您可以將其變更為所需的架構名稱。
現在連線已準備就緒,您可以執行 SQL 查詢來擷取或更新資料。以下是一個簡單的選擇資料的查詢:
<code class="cpp">sql::Statement *stmt; sql::ResultSet *res; stmt = con->createStatement(); res = stmt->executeQuery("SELECT 'Hello World!' AS _message'");</code>
這段程式碼中,stmt是用於執行查詢的語句對象,res是包含查詢結果的結果集。
要迭代結果並檢索數據,請使用以下程式碼:
<code class="cpp">while (res->next()) { cout << "\t... MySQL replies: "; cout << res->getString("_message") << endl; cout << "\t... MySQL says it again: "; cout << res->getString(1) << endl; }</code>
這裡,while 循環迭代結果集中的行,並res->; next() 將遊標前進到下一行。 res->getString() 檢索指定列的值(範例中的 _message 或列 1)。
透過整合 MySQL Connector/C 函式庫並遵循概述的步驟如上所述,您可以無縫地建立與 MySQL 資料庫的連接並在 C 應用程式中執行資料操作。請記住在完成後處理異常並關閉連接對象,以確保正確的資源管理。
以上是如何使用 C 建立與 MySQL 資料庫的連線?的詳細內容。更多資訊請關注PHP中文網其他相關文章!