위의 코드에서 UNIX 소켓에 대한 경로에서 프로토콜을 분리하려는 경우 아래와 같이 데이터베이스 연결 URL이 있는 줄을 다시 작성합니다. tmp.str.val = “unix://” “/tmp/mysql.sock”; 이 인터페이스의 사용자는 일반적으로 기본 데이터베이스 관리 시스템(DBMS)을 처리하는 방법을 검색해야 하는 도구입니다. 이는 둘 이상의 DBMS와 함께 사용하려는 응용 프로그램의 경우 특히 그렇습니다. 예를 들어 도구는 getTypeInfo()를 사용하여 CREATE TABLE 문에서 사용할 수 있는 데이터 형식을 찾을 수 있습니다. 사용자는 지원 호출할 수 있습니다CorrelatedSubquery() 및 supportsBatchUpdates() 상관 된 하위 쿼리를 사용할 수 있는지 확인 하 고 일괄 처리 업데이트가 허용 되는지 확인 합니다. UNIX 도메인 소켓을 사용하여 로컬 호스트에서 실행 중인 MySQL 서버에 연결하려면 데이터베이스 연결 URL에 대해 “unix://path/to/unix_socket_file”를 지정합니다. 예를 들어, unix:///tmp/mysql.sock. 열 레이블은 SQL “AS” 절로 지정된 열의 레이블입니다. SQL “AS” 절을 지정하지 않으면 레이블이 열의 이름입니다. 예를 들어 CN은 SQL 문의 열 레이블입니다. bash 셸은 이 자습서의 모든 예제를 표시하는 데 사용되었습니다. 이 자습서의 코드 샘플은 MySQL 테스트 데이터베이스의 City 테이블에서 데이터를 검색하려고 합니다.

mysql 클라이언트를 사용하여 테이블 구조와 City 테이블의 데이터가 여기에 표시됩니다. MySQL 서버가 기본 포트 3306에서 실행되고 있습니다. 이 자습서에서는 MySQL 데이터베이스에서 데이터를 연결, 삽입 및 검색하는 간단한 예제와 함께 MySQL 커넥터/C++ 드라이버를 빌드하고 설치하는 데 필수적인 단계를 보여 줄 것입니다. 이 문서에서는 C++ 응용 프로그램의 데이터베이스 연결에 중점을 두므로 일부 종류의 MySQL 데이터베이스가 이미 클라이언트 컴퓨터에서 액세스 가능한 것으로 가정합니다. 데이터베이스에 새 레코드를 삽입하려는 경우 다음 예제와 같이 executeUpdate 메서드를 사용하여 ::: 표기법이 위 단락에서 완전히 정규화된 메서드 이름을 표시하는 데 사용되었습니다. 예를 들어 sql::Driver::get_driver_instance() sql은 네임스페이스이고 드라이버는 클래스 이름이며 get_driver_instance()는 메서드의 이름입니다. 커넥터/C++를 사용하는 C++ 응용 프로그램에서는 모든 커넥터/C++ 선언을 “sql::”로 접두사하지 않도록 코드 맨 위에 “네임스페이스 sql;”을 포함할 수 있습니다. 이 자습서의 나머지 부분에서는 단순성을 위해 모든 커넥터/C++ 특정 선언에서 네임스페이스 sql이 생략되었습니다. 다음은 이 자습서의 예제를 컴파일, 빌드 및 실행하는 데 사용되는 도구 및 기술입니다.

옵션 이름에 대한 문자열 “libmysql_debug”는 MySQL 클라이언트 라이브러리의 디버그 버전의 경우 디버그 추적을 가능하게 하며, 여기서 문자열 “clientTrace”는 커넥터/C++ 드라이버에 의한 내부 추적의 경우 디버그 추적을 가능하게 합니다. 릴리스 1.0.5 이후부터 커넥터는 범위를 벗어날 때 ResultSetMetaData 개체를 자동으로 청소합니다.

Categories: Sin categoría