차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
tech:sqlite [2014/10/25 04:03] – 만듦 V_Ltech:sqlite [2023/10/29 17:49] (현재) – [import] V_L
줄 1: 줄 1:
 +{{tag>sqlite}}
 ====== Sqlite ====== ====== Sqlite ======
 +{{http://sqlite.com/images/sqlite370_banner.gif}}
 +
  
-http://sqlite.com 
  
 SQLite 는 독립적이고, 서버가 필요 없으며, 특별한 설정을 할 필요도 없는, 트렌젝션이 가능한 SQL 데이타베이스 엔진으로 꾸준히 개발중인 Library 이다. SQLite는 [[MySQL]]나 [[PostgreSQL]]와 같은 데이터베이스 관리 시스템이지만, 서버가 아니라 응용 프로그램에 넣어 사용하는 비교적 가벼운 데이터베이스이다. SQLite 는 독립적이고, 서버가 필요 없으며, 특별한 설정을 할 필요도 없는, 트렌젝션이 가능한 SQL 데이타베이스 엔진으로 꾸준히 개발중인 Library 이다. SQLite는 [[MySQL]]나 [[PostgreSQL]]와 같은 데이터베이스 관리 시스템이지만, 서버가 아니라 응용 프로그램에 넣어 사용하는 비교적 가벼운 데이터베이스이다.
 +
 +http://sqlite.com
 +
  
 SQLite 의 코드는 공개되어 있고, 상업적이든 개인적이든, 어떤 용도로도 무료로 사용할 수 있다. 현재 SQLite 는 꽤 유명한 프로젝트를 포함하여, 생각하는 것 이상으로 많은 프로그램에서 사용하고 있다. SQLite 의 코드는 공개되어 있고, 상업적이든 개인적이든, 어떤 용도로도 무료로 사용할 수 있다. 현재 SQLite 는 꽤 유명한 프로젝트를 포함하여, 생각하는 것 이상으로 많은 프로그램에서 사용하고 있다.
  
-유명한 프로젝트 
  
-SQLite 는 SQL 데이타베이스 엔진을 내장하고 있다. 수 많은 SQL 데이타베이스와는 다르게, SQLite 는 별도의 서버 프로세스를 가지고 있지 않고, 일반 디스크 파일을 직접 읽고 씁니다. SQLite 의 데이타베이스는 오직 한 개의 파일에 멀티 테이블, 색인, 트리거, 뷰 등을 가지고 있다.그리고 데이타베이스 파일은 크로스 플랫폼을 지원한기 때문에, 32비트 - 64비트 또는 big-endian little-endian 아키텍처에서 서로 사용할 수 있다. 이것이 Applictiion File Format 으로 SQLite 가 사랑받는 이유이다.+ SQLite 는 SQL 데이타베이스 엔진을 내장하고 있다. 수 많은 SQL 데이타베이스와는 다르게, SQLite 는 별도의 서버 프로세스를 가지고 있지 않고, 일반 디스크 파일을 직접 읽고 씁니다. SQLite 의 데이타베이스는 오직 한 개의 파일에 멀티 테이블, 색인, 트리거, 뷰 등을 가지고 있다.그리고 데이타베이스 파일은 크로스 플랫폼을 지원한기 때문에, 32비트 - 64비트 또는 big-endian little-endian 아키텍처에서 서로 사용할 수 있다. 이것이 Applictiion File Format 으로 SQLite 가 사랑받는 이유이다.
  
-SQLite 는 매우 작은 라이브러리이다. 컴파일러 세팅이나 타겟 플렛폼에 따라서 조금의 차이는 있겠지만, 350 kbye 정도밖에 되지 않는다. 옵션 기능을 제거하면 200 kbyte 이하로도 만들 수 있다. 또한 실행시에는 메모리 스택영역은 4kbyte, 힙 영역은 100 kbyte 으로 매우 조금만 차지한다. 이런 이유로 휴대폰, PDA, MP3 플레이어와 같이 메모리 제약적인 곳에서 SQLite 를 널리 쓰고 있다. 메모리와 성능은 서로 교환적이다. 메모리 공간이 많을수록 속도는 빨라진다. 그럼에도 불구하고 작은 메모리 환경에서도 우수한 속도를 자랑한다.+ SQLite 는 매우 작은 라이브러리이다. 컴파일러 세팅이나 타겟 플렛폼에 따라서 조금의 차이는 있겠지만, 350 kbye 정도밖에 되지 않는다. 옵션 기능을 제거하면 200 kbyte 이하로도 만들 수 있다. 또한 실행시에는 메모리 스택영역은 4kbyte, 힙 영역은 100 kbyte 으로 매우 조금만 차지한다. 이런 이유로 휴대폰, PDA, MP3 플레이어와 같이 메모리 제약적인 곳에서 SQLite 를 널리 쓰고 있다. 메모리와 성능은 서로 교환적이다. 메모리 공간이 많을수록 속도는 빨라진다. 그럼에도 불구하고 작은 메모리 환경에서도 우수한 속도를 자랑한다.
  
 =====사용하는 곳===== =====사용하는 곳=====
  
- - Photoshop Lightroom 제품에서 파일 포맷으로 SQLite 를 사용하고 있다. 그리고 Adebe Integrated Runtime(AIR) 에서도 SQLite 는 표준으로 사용된다. 또한 Acrobat Reader 에서도 SQLite 를 사용하는 것으로 알려져 있다. +  - Photoshop Lightroom 제품에서 파일 포맷으로 SQLite 를 사용하고 있다. 그리고 Adebe Integrated Runtime(AIR) 에서도 SQLite 는 표준으로 사용된다. 또한 Acrobat Reader 에서도 SQLite 를 사용하는 것으로 알려져 있다. 
- - A350 XWB 라는 항공 소프트웨어에서 SQLite 를 사용하고 있다. +  - A350 XWB 라는 항공 소프트웨어에서 SQLite 를 사용하고 있다. 
- - Apple 은 Apple Mail, Safari, Aperture 등 Mac OS X 의 수 많은 곳에서 SQLite 를 쓰고 있다. iPhone 과 iPod touch 그리고 iTunes 에서도 사용하고 있다. +  - Apple 은 Apple Mail, Safari, Aperture 등 Mac OS X 의 수 많은 곳에서 SQLite 를 쓰고 있다. iPhone 과 iPod touch 그리고 iTunes 에서도 사용하고 있다. 
- - 파이어폭스 브라우저에서 개인 meta-data 를 저장할 때 SQLite 를 사용하고 있으며, Mozilla 의 Thunderbird Email Reader 에서도 사용하고 있다. +  - 파이어폭스 브라우저에서 개인 meta-data 를 저장할 때 SQLite 를 사용하고 있으며, Mozilla 의 Thunderbird Email Reader 에서도 사용하고 있다. 
- - Google 은 Desktop for Mac 과 Google Gears, 휴대폰 Android OS, 크롬 웹 브라우저에서 사용하고 있다. +  - Google 은 Desktop for Mac 과 Google Gears, 휴대폰 Android OS, 크롬 웹 브라우저에서 사용하고 있다. 
- - QuickBooks 와 TurboTax 에서 사용자 에러를 수집하기 위해서 SQLite 를 사용하고 있다. +  - QuickBooks 와 TurboTax 에서 사용자 에러를 수집하기 위해서 SQLite 를 사용하고 있다. 
- - 백신 프로그램에서 SQLite 를 사용하고 있다. +  - 백신 프로그램에서 SQLite 를 사용하고 있다. 
-  SQLite 의 메일링 리스트를 보면 적어도 하나 이상의 Microsoft 게임 프로그램 개발자 그룹에서 사용하고 있는 것으로 생각된다. 실제로 게임이 릴리스되거나 아직도 SQLite 를 쓰고 있다면 말이죠. +  -  SQLite 의 메일링 리스트를 보면 적어도 하나 이상의 Microsoft 게임 프로그램 개발자 그룹에서 사용하고 있는 것으로 생각된다. 실제로 게임이 릴리스되거나 아직도 SQLite 를 쓰고 있다면 말이죠. 
- - 유명한 프로그래밍 언어인 PHP 는 SQLite2 와 SQLite3 를 포함하고 있다. +  - 유명한 프로그래밍 언어인 PHP 는 SQLite2 와 SQLite3 를 포함하고 있다. 
- - SQLite 는 Python 2.5 부터 포함되어 있다. +  - SQLite 는 Python 2.5 부터 포함되어 있다. 
- - REALbasic 프로그래밍 환경은 AES 암호화를 지원하는 SQLite 버전을  포함하고 있다. +  - REALbasic 프로그래밍 환경은 AES 암호화를 지원하는 SQLite 버전을  포함하고 있다. 
- - Mac OS X 와 Windows 의 Skype 클라이언트에서 SQLite 를 사용하고 있다. +  - Mac OS X 와 Windows 의 Skype 클라이언트에서 SQLite 를 사용하고 있다. 
- - Solaris 10 에서는 서비스 관리 시설에서 SQLite 저장 포멧을 사용하고 있다. 그래서 unix 의 고전적인 파일인 /etc/inittab 파일을 SQLite 데이타베이스로 대체하였다.+  - Solaris 10 에서는 서비스 관리 시설에서 SQLite 저장 포멧을 사용하고 있다. 그래서 unix 의 고전적인 파일인 /etc/inittab 파일을 SQLite 데이타베이스로 대체하였다. 
 + 
 +[[http://crystalcube.co.kr/89|faq]] 
 + 
 + 
 + 
 +<file php> 
 + 
 +$db = new SQLite3; 
 +$statement = $db->prepare('SELECT * FROM table WHERE id = :id;'); 
 +$statement->bindValue(':id', $id); 
 + 
 +$result = $statement->execute(); 
 + 
 +</file> 
 + 
 + 
 +=====설치===== 
 +  sudo apt-get install php-sqlite3 
 + 
 +=====도구===== 
 + 
 +https://sqlitebrowser.org/ 
 + 
 +=====명령줄===== 
 + 
 +====db 열기==== 
 + 
 +> sqlite3 test.db 
 + 
 +없어도 열림. 이후 작업을 하면 파일이 생성됨. 
 + 
 +====mode==== 
 +> .mode csv 
 + 
 +csv 파일 다루는 것으로 설정. 
 + 
 +====import==== 
 + 
 +>.import ./userdata2.csv user2 
 + 
 +csv 파일을 user2 테이블로 가져온다.  
 +해당 테이블이 없다면 첫행의 내용을 제목(필드 이름)으로 사용한다. 
  
  
-{{tag>sqlite}}