sqlite3_exec 예제

By agosto 2, 2019Sem categoria

다음 예제에서는 asprintf()를 사용하여 동적으로 쿼리를 만듭니다. 이 작업은 간단하고 신뢰할 수 있는 입력으로 수행할 수 있습니다. 사용자가 제공하는 콘텐츠의 경우 아래와 같이 값 바인딩을 사용해야 합니다. 레코드를 가져오기 위해 실제 예제를 진행하기 전에 예제에서 사용하는 콜백 함수에 대한 몇 가지 세부 정보를 살펴보겠습니다. 이 콜백은 SELECT 문에서 결과를 가져오는 방법을 제공합니다. 그것은 다음과 같은 선언을 가지고 – 편의 함수 sqlite3_exec()는 위의 단계를 결합합니다. 그러나 값 바인딩을 구현 하지 나타납니다. 사용자 입력의 경우 매우 신중한 마스킹 이나 고전적인 방법을 사용 하십시오. 다음 예제에서는 한 번의 호출로 두 개의 SQL 쿼리를 실행하는 방법을 보여 주십습니다. 결과 데이터는 콜백 함수에 제공됩니다.

이 예제에서 물음표(?)는 자리 표시자로 사용되며 나중에 실제 값으로 대체됩니다. 이전 부분과 마찬가지로 예제를 컴파일하고 실행합니다. 이 예제에서는 PRAGMA table_info(tableName) 명령을 발행하여 Cars 테이블에 대한 메타데이터 정보를 가져옵니다. 이 문서에서는 C++/C를 사용하여 SQLITE3을 사용하는 데이터베이스에 대한 빠른 가이드를 제공합니다. 이 예제에서는 C ++를 사용했지만 문자열을 전달할 때 문자 배열에서 문자열을 변환하기 위해 c_str() 메서드를 호출했습니다. 다음 예제는 Base 64 인코딩 및 디코딩 인터페이스를 보여 줍니다: C 코드 세그먼트를 따라 위의 예제에서 만든 COMPANY 테이블에서 레코드를 만드는 방법을 보여 줍니다- 다음 예제에서는 장소 표시기를 사용하고 값을 바인딩하는 방법을 보여 줍니다. time.h는 암호화하고 저장하는 예제 메시지를 만들기 위해 얻어진다. 이 예제에서는 SQLite가 기본적으로 자동 커밋 모드에 있는지 확인합니다. 다음 예제에서 테이블을 만듭니다. 쿼리는 정적 문자열입니다. 이 코드 조각은 위의 예제에서 sqlite3_open() 및 sqlite3_close() 사이에 배치할 수 있습니다. Select 작업을 표시하기 전에 모든 자습서 중 가장 중요한 작업을 쉽게 고려할 수 있으므로 예제에서 사용할 콜백 프로토타입을 살펴보겠습니다.

이 작업을 수행하면 Select 작업에서 출력을 얻을 수 있습니다: 이 루틴은 정수반환: 정수가 SQLITE_OK 매크로와 같으면 모든 것이 잘 작동합니다. 이 예제에서는 데이터베이스 의 열기에 대한 컨트롤이 생략되고, 이는 과거 코드에서 작성되었습니다. 다음 예제는 자동 커밋 모드를 더 명확히 합니다.