본문 바로가기

DBMS

(116)
[SQLite] 기본키의 자동증가 (AUTOINCREMENT) SQLite에서는 테이블 스키마를 설계할 때 기본키가 자동으로 증가되게 정의할 수 있다. 테이블을 생성할 때 기본키에 AUTOINCREMENT를 설정하면 INSERT 문에서 명시적으로 값을 입력할 수도 있고, 기본키를 생략할 수도 있다. 기본키가 생략된 경우에는 테이블에 입력된 기본키 중 가장 큰 값에 1이 증가된 값으로 입력된다. 또한 AUTOINCREMENT가 기본키에 설정됐더라도 기본키 조건만 만족하면 순차적으로 입력되지 않아도 된다. 1. 기본키가 아닌 다른 컬럼에 AUTOINCREMENT를 설정한 경우 2. 기본키에 AUTOINCREMENT를 설정한 경우 3. INSERT 문에서 명시적으로 값 입력한 경우 1 4. INSERT 문에서 명시적으로 값 입력한 경우 2 5. AUTOINCREMENT를..
[SQLite] 숨겨진 기본키, ROWID SQLite에서는 명시적으로 기본키를 설정하지 않거나 기본키를 설정하더라도 INTEGER 자료형이 아닌 경우에는 내부적으로 숨겨진 기본키인 ROWID를 추가한다. ROWID는 숨겨질 컬럼이라서 SELECT 문으로 질의할 때 '*'를 사용해서는 가지고 올 수 없고, 명시적으로 'ROWID'라고 지정해야 해당 컬럼을 조회할 수 있다. 1. 기본키를 INTEGER 자료형으로 하지 않고, ROWID를 명시적으로 지정한 경우 2. 기본키를 INTEGER 자료형으로 하지 않고, '*'을 사용한 경우 3. 기본키를 INTEGER 자료형으로 하고 ROWID를 명시적으로 지정한 경우 4. ROWID는 '_ROWID_', 'OID'라는 별칭을 가지고 있다.
[SQLite] LIMIT 절을 이용한 결과집합 수 제한하기 결과집합을 가져올 때 상위 몇 건과 같이 레코드 개수를 제한해서 가져오려면 어떻게 해야할까? SQL Server의 경우에는 TOP 절을 사용하면 되지만, SQLite는 Limit 절을 사용하면 된다. 아래의 결과는 col1 컬럼을 기준으로 정렬한 값의 결과집합을 가져오는 쿼리이다. 이 결과집합에서 상위 5건만 가지고 오고 싶을 때 LIMIT 5 를 추가로 입력해주면 된다. 그 외 상위 몇번째부터 몇건의 결과집합을 가지고 오는 방법도 있다. LIMIT 3, 4 라고 입력하면 상위 3번째 레코드부터 4건의 레코드를 가지고 오는 것을 뜻한다.
[SQLite] SELECT 문의 출력 결과를 좀 더 쉽게 보기 SQLite 셸 모드에서 SELECT 문을 실행하면 컬럼명도 나타나지 않고 보기가 쉽지 않다. SELECT 문의 출력 결과를 좀 더 보기 쉽게하기 위해 아래의 옵션을 설정하면 된다. .header ON .mode column .nullvalue NULL 설정 후 SELECT 문을 실행해보면 아래와 같이 좀 더 보기 쉽게 확인할 수 있다.
[SQLite] 요일 구하기 SQLite에서 날짜를 알면 요일을 알 수 있는 방법이 있을까? strftime 함수를 사용하면 확인할 수 있다. select strftime('%w', '날짜') 결과 값으로 요일을 의미하는 0~6의 숫자를 반환한다. 0:일요일, 1:월요일, 2:화요일, 3:수요일, 4:목요일, 5:금요일, 6:토요일 strftime 함수는 다른 기능이 많은데, 아래의 링크를 참고하자. 참고 : http://www.sqlite.org/lang_datefunc.html
[SQLite] SQLite 테이블 생성/삭제, 데이터 입력/조회
[SQLite] SQLite의 자료형 SQLite에서 데이터베이스에 입력 가능한 자료형은 다음과 같다. 자료형 설명 예제 INTEGER 부호를 갖는 정수형 데이터 -1234, -1, 0, 1234 REAL(FLOAT, DOUBLE) 부호를 갖는 부동소수점 데이터 3.14, 123000000.0, 1.23E8, 0.0032132, 1.2342E-4 TEXT 문자열 데이터 'SQLite' 'SQLite 자료형' BLOB 바이너리 데이터 (Binary Large Object) x'0101', x'0fac', x'0F0FAC', x'01234532' NULL 값이 정의되지 않거나 존재하지 않음 NULL INTEGER는 부호가 있는 정수형 데이터를, REAL은 부호가 있는 부동소수점 데이터를 저장할 수 있다. REAL은 다른 데이터베이스와의 SQL ..
[SQLite] 윈도우에 SQLite3 설치 1. 다운로드 페이지(https://www.sqlite.org/download.html)로 이동하여 'Precompiled Binaries For Windows' 항목에 있는 sqlite-3_x_y.zip 파일을 내려 받는다. 여기서 x와 y는 버전 번호에 해당한다. 2. 다운 받은 압축 파일을 풀면 'sqlite3.exe' 파일이 있는데 이 파일을 임의 디렉터리에 복사한다. 3. 시작 ▶ 실행 ▶ cmd 입력 후 명령 프롬프트에서 'sqlite3.exe'를 입력하여 프로그램 실행