프로젝트 소개

go-sqlite3는 Go 프로그래밍 언어를 위한 CGO 기반의 SQLite3 드라이버입니다. 이 드라이버는 Go의 표준 database/sql 인터페이스와 SQLite3 엔진 사이의 가교 역할을 하여, 개발자가 Go 애플리케이션에 SQLite 데이터베이스를 통합할 수 있도록 합니다. 주요 특징 및 기능은 다음과 같습니다: - **CGO 의존성**: CGO 패키지이므로 컴파일을 위해 GCC 컴파일러가 필요하며 환경 변수 `CGO_ENABLED=1`이 설정되어 있어야 합니다. - **DSN 설정**: 저널 모드, 잠금 모드, 동기화 설정 및 캐시 크기를 포함하여 데이터베이스 동작을 구성하기 위한 광범위한 Data Source Name (DSN) 옵션을 지원합니다. - **빌드 타임 확장**: Go 빌드 태그를 통해 활성화할 수 있는 다음과 같은 다양한 선택적 SQLite 기능을 제공합니다: - 전체 텍스트 검색 (fts5) - JSON SQL 함수 - 수학 함수 - ICU (International Components for Unicode) - 가상 테이블 및 DBSTAT - 보안 삭제 (Secure Delete) - **교차 플랫폼 지원**: Linux (Alpine, Fedora, Ubuntu 포함), macOS (x86 및 ARM), Windows 및 Android에 대한 컴파일 가이드를 제공합니다. - **사용자 인증**: 데이터베이스 내 사용자 인증 및 관리를 위한 모듈을 포함하고 있습니다 (현재는 deprecated 상태).