본문 바로가기
Study/Database

SQLite 사용하기!!

by Answer Choi 2015. 10. 15.
반응형

이전까지 썼던 MySQL의 경우 DB서버가 따로 존재해야 합니다.


하지만 이런 서버서비스 없이 프로그램을 만들게 되면 DB는 어디에 저장을 할까요?


바로 이런 경우 SQLite를 사용합니다.


SQLite는 서버가 아닌 클라이언트에 DB를 만들게 됩니다.


android에서 주로 만들었던 DB도 바로 SQLite입니다.


사용법은 비슷합니다.


다운로드는 SQLite.org 나 리눅스의 경우 아래의 설치명령어를 사용해서 설치를 할 수 도 있습니다.



설치가 완료되면 실행을 하면 됩니다.


실행 명령어는 sqlite db명 을 입력하시면 됩니다.


db파일이 없으면 자동으로 생성되고, 있으면 이어서 작업을 하게 됩니다.


MySQL같은 DB의 경우 SQL Server에 접속해서 DB를 선택하지만 SQLite의 경우 db를 먼저 선택합니다.


만약 db명을 안적게되면 db가 생성되지 않습니다.


임의의 DB로 접속해 보겠습니다.(이전 mysql로 작업했던걸 기준으로 해보겠습니다.)



DB명 answerofgod으로 접속했습니다.


sqlite는 dot(.) 명령어들이 있는데 .help를하면 도움말이 나옵니다.


1
.help
cs



1. Database 보기


1
.databases
cs



database를 볼 수 있습니다.


밑에껀 임시로 만들어 졌다가 sqlite를 빠져나오게 되면 자동으로 지우게 됩니다.


2. Table 만들기& Table 보기


1
2
3
4
5
create table blog(
   ...> id integer not null primary key,
   ...> url text not null,
   ...> description text null
   ...> );
cs


mysql과 비교해 봤을때 sqlite는 auto increment를 쓰지 않아도 됩니다. 그리고 int 대신 integer로


primary key로 해놓으면 자동으로 auto increment 기능이 적용됩니다.


table이 생성되었는지 확인하기 위해 dot 명령어를 써보겠습니다.


1
.tables
cs



제대로 생성이 되었네요.


3. Insert & select


이제 데이터를 하나 넣어보겠습니다.


1
 insert into blog(url,description) values('answerofgod.tistory.com','my tistory blog');
cs



데이터가 정상적으로 들어갔는지 확인해 보겠습니다.


1
select * from blog;
cs


성공적으로 들어갔네요.


그리고 primary key로 지정한 id값도 제대로 출력되었습니다.


auto increment가 되는지 하나 더 넣은 다음 select해보겠습니다.



id값이 제대로 증가하고 있습니다.


4. Update


데이터를 갱신할때에는 update를 씁니다.


1
update blog set description='my google blog' where id=2;
cs



description 부분이 갱신된 걸 볼 수 있습니다.


5. Delete


필요없는 데이터를 지울때에는 역시 delete를 씁니다.


1
delete from blog where id=2;
cs



데이터가 지워진걸 확인할 수 있습니다.


6. Table 삭제


Table 삭제는 drop명령을 사용합니다.


1
drop table blog;
cs



7. sqlite 종료하기


sqlite를 종료하기위해서는 dot 명령어를 사용해야 합니다.


1
.quit
cs



이로써 간단한 sqlite 사용법에 대해 알아봤습니다.


전체적으로 Mysql과 비슷하지만 dot 명령어가 존재하는 점.


database를 접속시에 만든다는 점이 크게 다른 것 같습니다.

반응형

'Study > Database' 카테고리의 다른 글

SQL (DATABASE) 명령어3-group by  (0) 2016.07.27
SQL (DATABASE) 명령어2-수식및 연산자  (0) 2016.07.26
SQL (Database) 명령어-기본명령어  (0) 2015.10.02
mysql 5.6 service 시작이 안될때  (0) 2015.09.01
mySQL 설치  (0) 2015.07.29

인기글