본문 바로가기
VisualStudio.C++.C#

SQLite . VC++ 프로젝트에 정적 포함( 소스 직접 포함) 활용하기

by i.got.it 2025. 11. 26.

 

 

VC++ 프로젝트 에서 SQLite  소스 직접 포함 시켜 활용하기.  

 

SQLite 다운로드

https://sqlite.org/download.html 에서 sqlite-amalgamation-3510000.zip  (2025년 11월 최신 버전 : 3.51.0): 

 

상기 파일 다운로드 압축 해제하여 3개의 파일 sqlite3.c, sqlite3.h, sqlit3ext.h 를 프로젝트에 추가한다. 

 

프로젝트에 추가방법

솔루션 탐색기 → Source Files → 우클릭 → Add → Existing Item → sqlite3.c
솔루션 탐색기 → Header Files → Add → Existing Item → sqlite3.h, sqlite3ext.h

 

추가  설정

설정1 . 프로젝트에서 sqlite3.c 만 PCH(미리 컴파일된 헤더. pch.h )  사용 안 하도록 설정

 

  1. 솔루션 탐색기 → sqlite3.c 선택
  2. 우클릭 → Properties
  3. C/C++ → Precompiled Headers → Precompiled Header → Not Using Precompiled Headers 로 변경
  4. OK

 

 

위와같이 설정하면 전체 프로젝트는 PCH 계속 쓰지만, sqlite3.c만 예외 처리되어 컴파일시 오류 발생 안함. 

 

참고 : Sqlite 에 pch.h 인클루드 시키면 안되는 이유, 

SQLite는 C89호환 단일 파일로 되어 있고 컴파일러 설정에 매우 민감한데, pch.h 를 include 시킬 경우:

  • 정의 충돌
  • pragma 깨짐
  • macro 중복
  • 컴파일 순서 오류

등이 발생할 가능성이 있음. 그래서 **sqlite3.c 는 “PCH 제외”** 필수. 

 

 

 

설정2. Visual Studio에서 fopen 같은 C함수 보안 경고 없애기

 

sqlite3.c 파일 맨위에 아래 구문 추가. 

 

#define _CRT_SECURE_NO_WARNINGS

 

설정3.   /O2 최적화 . 최적화가 꺼져 있으면 SQLite 실행속도 특히 느려짐.

 

Configuration: Release
C/C++ → Optimization → /O2 (Max Optimizations)

 

 

설정4. SQLite 스레드 안전 설정. 

 

SQLite3.c 파일 제일위에 아래처럼 기록한다.  

 

 

SQLite 사용예 


#include "sqlite3.h"

void test_sqlite()
{
    sqlite3* db;
    sqlite3_open("test.db", &db);

    const char* sql =
        "CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY, name TEXT);"
        "INSERT INTO user (name) VALUES ('test');";

    char* errMsg = nullptr;
    sqlite3_exec(db, sql, nullptr, nullptr, &errMsg);

    sqlite3_close(db);
}

 

 

 

팁. 

SQLite 활용시 내가 사용하기 편한 래퍼 클래스 만들어서 활용함이 정석이며 이를 static 라이브러리 프로젝트로 만들어 두면 유지보수 측면에서 매우 유용하다. 

 

 

VC++ . 정적 라이브러리 .Static Library

Static 라이브러리Static 라이브러리는 .h, .cpp로 구현된 클래스 소스를 단일 위치에서 일관되게 관리하기 위한 매우 현실적인 수단이다.특정 기능이나 도메인 로직을 하나의 static 라이브러리 프로

igotit.tistory.com

 

 

 

상위 정리 

 

 

Visual Studio , Visual C++ 활용 정리.

Visual Studio C++ 활용 Visual StudioVisual C++ / C#1.설치, 설정 주제 비고. Visual Studio 2010 설치. Visual Studio 2013 (Community)무료 설치. Visaul Studio 2015 (Community)무료 설치.- Visual Studio 2015 버전은 이전 버전대비 급

igotit.tistory.com

 

 

 

연관 

 

 

 

SQLite. 개요. 다운로드. implicit linking 위한 dll, h, lib 파일 확보.

SQLite 개요. 무료 로컬 RDBMS(관계형 데이터베이스 관리시스템)특징. 1. 로컬전용. 서버기능없음.2. 무설치, DB관련 단 1개의 파일.- 응용프로그램에서 도입편리.- SQLite 포함된 응용프로그램 배포편리

igotit.tistory.com

 

 

 

 

 

 


첫 등록 : 2025.11.26

최종 수정 : 

단축 주소 : https://igotit.tistory.com/6321


 

댓글



비트코인




            암호화폐/외환/나스닥/골드          
       
현물 |선물 인버스 |선물 USDT , bybit MT5               프랍 트레이딩. MT4,MT5