Spatialite는 SQLite를 기반으로 하므로 먼저 SQLite를 설치해야 합니다. SQLite 사이트에서 Precompiled Binaries for 32-bit Windows (.NET Framework 4.6) 중 두번째인 sqlite-netFx46-binary-Win32-2015-1.0.113.0.zip 다운로드 받습니다. (Visual Studio에서 .NET WinForm 프로젝트에서 사용할 것인데 .NET 버전은 4.6으로 하고 32Bits로 설정함). 압축을 풀고 System.Data.SQLite.dll 파일 프로젝트 참조에 추가하고, SQLite.Interop.dll 파일은 프로젝트의 실행 파일이 생성되는 Debug 및 Release에 복사하면 SQLite의 기본 기능은 사용할 수 있게 됩니다.
이제 Spatialite를 사용하기 위해서는 이 파일을 다운로드 받아 압축을 풀고 전체 파일을 프로젝트의 실행 파일이 생성되는 Debug 및 Release 폴더에 복사합니다. 최종적으로 아래처럼 파일이 구성될 것입니다. (복사되어진 파일은 선택 상태로 둠)
이제 다음 코드를 테스트하면 정상 작동됩니다.
conn = new SQLiteConnection("Data Source=d:/db.sqlite;Version=3;"); conn.Open(); conn.LoadExtension("mod_spatialite"); String sql = "select sig_cd, ST_AsText(geometry) from TL_SCCO_SIG"; //String sql = "select sig_cd, geometry from TL_SCCO_SIG"; SQLiteCommand cmd = new SQLiteCommand(sql, conn); SQLiteDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { MessageBox.Show(rdr["sig_cd"] + " " + rdr.GetString(1)); break; } rdr.Close(); conn.Close(); conn.Dispose();
위의 코드 중 4번 코드가 Spatialite 모듈을 확장 기능으로 적재합니다.