[c++] MINGW와 데이터베이스 연동

이 글에서는 MINGW(Minimalist GNU for Windows) 환경에서 데이터베이스와의 연동을 위한 기본적인 설정 방법을 안내합니다.

MINGW란?

MINGW는 Windows에서 GCC(GNU Compiler Collection)를 사용하여 프로그램을 개발할 수 있도록 하는 도구 모음입니다. MINGW를 통해 Windows에서도 UNIX 스타일의 개발 환경을 구축할 수 있습니다.

데이터베이스 연동을 위한 준비

MINGW에서 데이터베이스와 연동하기 위해서는 미리 해당 데이터베이스에 대한 클라이언트 라이브러리와 헤더 파일이 필요합니다.

예시: MySQL과의 연동을 위해서는 libmysql.dllmysql.h가 필요합니다.

데이터베이스 연동 예제

다음은 MINGW에서 MySQL 데이터베이스와 연동하는 간단한 C++ 예제 코드입니다.

#include <iostream>
#include <mysql.h>

int main() {
  MYSQL *conn;
  MYSQL_RES *res;
  MYSQL_ROW row;

  conn = mysql_init(NULL);
  
  if (conn == NULL) {
    std::cout << "mysql_init() failed" << std::endl;
    return 1;
  }

  conn = mysql_real_connect(conn, "host", "user", "password", "database", 0, NULL, 0);

  if (conn) {
    std::cout << "Connected to MySQL server" << std::endl;

    // Perform query
    if (mysql_query(conn, "SELECT * FROM table")) {
      std::cout << "Query failed: " << mysql_error(conn) << std::endl;
      return 1;
    }

    res = mysql_use_result(conn);
    
    // Process result set
    while ((row = mysql_fetch_row(res)) != NULL) {
      std::cout << row[0] << " " << row[1] << std::endl;
    }

    mysql_free_result(res);
    mysql_close(conn);
  } else {
    std::cout << "Connection to MySQL server failed" << std::endl;
    return 1;
  }

  return 0;
}

위 코드에서는 MySQL 클라이언트 라이브러리를 사용하여 데이터베이스에 연결하고, 쿼리를 실행한 결과를 출력하는 간단한 예제를 제공합니다.

결론

MINGW 환경에서 데이터베이스와의 연동을 위해서는 해당 데이터베이스의 클라이언트 라이브러리와 헤더 파일을 사용하여 적절한 설정과 예제 코드를 작성하여 연동할 수 있습니다.

참조 문헌: