새소식

인기 검색어

Data, SQL

2. DDL이란, SQL 데이터타입과 제약조건 / vscode 실습

  • -

이번엔 DDL, DML, DCL에 대해 적어보고, VScode에서 실습한 내용을 적어보겠다.

우선 VScode에서 실습하기위한 환경설정 방법이다.

 

  1. https://www.sqlite.org/download.html 사이트에서 본인의 운영체제에 맞는 파일 다운로드
  2. C드라이브에 sqlite 폴더 생성 후 다운받은 파일 압축 모두풀기
  3. 시스템 환경 변수 편집 - 고급 - 환경 변수 - 시스템 변수 - Path 에 경로 작성

   4. git bash 실행하여 code ~/.bashrc 입력, 실행 된 vscode에서 alias sqlite3="wipty sqlite3" 입력 후 저장

   5. git bash 에서 source ~/.bashrc 입력, 이후 sqlite3 입력시 sqlite 사용 가능

   6. vscode에서 sqlite 사용하려면 sqlite3 확장프로그램 설치

 

 

🔍 DDL (Data Definition Language) 이란?

관계형 데이터베이스 구조(테이블, 스키마)를 정의(생성, 수정 및 삭제)하기 위한 명령어

 

🔍 DDL 특징

DDL은 명령어를 입력하는 순간 작업이 즉시 반영(Auto Commit) 되기 때문에 사용시 주의해야 한다.

 

🔍 DDL 종류

  • CREATE : 테이블 생성
  • ALTER : 테이블 수정
  • DROP : 테이블 삭제
  • RENAME : 테이블 이름 변경
  • TRUNCATE : 테이블 초기화

 

💻 DDL 실습 (vscode)

users 테이블 생성하기
CREATE TABLE users (
  name TEXT NOT NULL,
  age INTEGER NOT NULL,
  email TEXT NOT NULL UNIQUE
);

 

🔍 SQL의 Data Types 종류

  • NULL : 정보가 없거나 알 수 없음을 의미
  • INTEGER : 정수, 크기에 따라 0, 1, 2, 3, 4, 6 또는 8바이트와 같은 가변 크기를 가짐
  • REAL : 실수, 8바이트 부동 소수점을 사용하는 10진수 값이 있는 실수
  • TEXT : 문자데이터
  • BLOB : 입력된 그대로 저장된 데이터 덩어리 (대용 타입 없음), 바이너리 등 멀티미디어 파일

 

🔍 SQL의 Constraits(제약조건) 종류

  • NOT NULL : 컬럼이 NULL 값을 허용하지 않도록 지정
  • UNIQUE : 컬럼의 모든 값이 서로 구별되거나 고유한 값이 되도록 함
  • PRIMARY KEY : 테이블에서 행의 고유성을 식별하는데 사용하는 컬럼
                               각 테이블에는 하나의 기본 키만 있음, 암시적으로 NOT NULL 조건 포함
  • AUTOINREMENT : 사용되지 않은 값이나 이전에 삭제된 행의 값 재사용 방지
                                   (Django에서는 테이블 생성 시 id 컬럼에 기본적으로 사용됨)

💻 DDL - ALTER 실습 (vscode)

ALTER TABLE 문을 사용하여 테이블 이름, 컬럼 이름 수정,
테이블에 새 컬럼 추가, 컬럼 제거가 가능하다.
-- 1. 테이블명 변경
ALTER TABLE table_name RENAME TO new_table_name;

-- 2. 컬럼명 변경
ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;

-- 3. 테이블에 새 컬럼 추가
ALTER TABLE table_name ADD COLUMN column_definition;

-- 4. 컬럼 제거
ALTER TABLE table_name DROP COLUMN column_name;

 

데이터베이스에서 테이블을 제거하기 위해서는 DROP TABLE 명령어를 사용한다.
DROP TABLE table_name;

 

이번 글에서 DML, DCL까지 모두 정리하려 했는데 VScode 내용을 같이 정리하려니
글이 길어져
다음 글로 미뤄서 정리해 보겠습니다ㅠㅠ

'Data, SQL' 카테고리의 다른 글

1. Data, SQL 공부 (SQLD합격)  (0) 2023.04.09
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.