웹 개발 영역에서는 데이터베이스의 데이터에 액세스하고 조작해야 하는 경우가 많습니다. C는 데이터베이스에 연결하고 쿼리하는 강력한 기능을 제공합니다. 이 기사에서는 C를 사용하여 MySQL 데이터베이스에 연결하는 방법을 살펴보고 실제 코드 예제를 통해 프로세스를 보여줍니다.
MySQL 데이터베이스에 연결하려면, 다음 전제 조건이 필요합니다:
데이터베이스에 대한 연결 구축은 데이터 액세스의 첫 번째 단계입니다. MySQL Connector/C 라이브러리는 연결을 설정하는 데 필요한 클래스와 기능을 제공합니다. 다음 코드 조각은 프로세스를 보여줍니다.
sql::Driver *driver;
sql::Connection *con;
driver = get_driver_instance();
con = driver->connect("tcp://127.0.0.1:3306", "root", "root");
이 코드에서 드라이버는 드라이버 클래스의 인스턴스이고, con은 드라이버 클래스의 인스턴스입니다. 연결 객체, get_driver_instance()는 라이브러리에서 드라이버 인스턴스를 검색합니다. 호스트, 사용자 이름 및 비밀번호를 매개변수로 사용하는 연결 기능을 사용하여 연결이 열립니다.
연결이 설정되면 어떤 데이터베이스 스키마를 사용할지 지정할 수 있습니다. 함께 일하고 싶습니다. 스키마는 데이터베이스 내의 객체(테이블, 뷰 등)의 논리적 컬렉션입니다. 스키마를 설정하려면 다음 코드를 사용합니다.
con->setSchema("test");
이 예에서는 "test" 스키마를 사용하지만 원하는 스키마 이름으로 변경할 수 있습니다.
이제 연결이 준비되었으므로 SQL 쿼리를 실행하여 데이터를 검색하거나 업데이트할 수 있습니다. 다음은 데이터를 선택하는 간단한 쿼리입니다:
sql::Statement *stmt;
sql::ResultSet *res;
stmt = con->createStatement();
res = stmt->executeQuery("SELECT 'Hello World!' AS _message'");
이 코드에서 stmt는 쿼리를 실행하는 데 사용되는 문 개체이고 res는 쿼리가 포함된 결과 집합입니다. results.
결과를 반복하고 데이터를 검색하려면 다음 코드를 사용합니다.
while (res->next()) {
cout getString("_message") getString(1) 여기서 while 루프는 결과 집합의 행을 반복하고 res->next()는 커서를 다음 행으로 이동합니다. res->getString()은 지정된 열(예제에서는 _message 또는 열 1)의 값을 검색합니다.
결론
MySQL 커넥터/C 라이브러리를 통합하고 위에 설명된 단계를 따릅니다. 을 사용하면 MySQL 데이터베이스에 대한 연결을 원활하게 설정하고 C 애플리케이션 내에서 데이터 작업을 수행할 수 있습니다. 적절한 리소스 관리를 보장하려면 예외를 처리하고 완료되면 연결 개체를 닫는 것을 잊지 마세요.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3