코딩왕랄프👊🏻

[SQL] SQL 데이타베이스 정리 본문

카테고리 없음

[SQL] SQL 데이타베이스 정리

hyerm_2 2021. 7. 23. 20:51
반응형
SMALL

# CREATE DB

CREATE DATABASE databasename;

 

# DROP DB

DROP DATABASE databasename;

 

 

 

# BACKUP DB

 

- 존재하는 DB에 full back up을 create

BACKUP DATABASE databasename
TO DISK = 'filepath';

- DIFFERENTIAL 

BACKUP DATABASE databasename
TO DISK = 'filepath'
WITH DIFFERENTIAL;

 

# CREATE TABLE

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
   ....
);

 

# DROP TABLE

DROP TABLE table_name;

 

# ALTER TABLE

- 존재하는 table의 column을 add, delete, modify

ALTER TABLE table_name
ADD column_name datatype;

 

# Constraints

- table내 data 대한 Rule 지정

- CREATE TABLE 구문과 함께 지정 or ALTER TABLE과.

CREATE TABLE table_name (
    column1 datatype constraint,
    column2 datatype constraint,
    column3 datatype constraint,
    ....
);

 

# NOT NULL

- NULL 값을 accept 할 수 없는 column들을 enforce

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255) NOT NULL,
    Age int
);

 

# UNIQUE

- column 내 모든 값들이 다름.

CREATE TABLE Persons (
    ID int NOT NULL UNIQUE,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

 

# PRIMARY KEY

- 테이블 내 각 record를 uniquely identify

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (ID)
);

 

# FOREIGN KEY

- table내 link를 destroy하는 action을 막음

CREATE TABLE Orders (
    OrderID int NOT NULL,
    OrderNumber int NOT NULL,
    PersonID int,
    PRIMARY KEY (OrderID),
    FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)
);

 

# CHECK

- column내 배치될 수 있는 값 범위를 제한

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CHECK (Age>=18)
);

 

# DEFAULT

- column에 대한 default 값을 설정

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    City varchar(255) DEFAULT 'Sandnes'
);

 

 

# CREATE INDEX

- table내 index들을 만드는데 사용

CREATE INDEX index_name
ON table_name (column1, column2, ...);

 

# AUTO INCREMENT

- 새로운 record가 테이블에 삽입될때 unique number가 자동적으로 생성

CREATE TABLE Persons (
    Personid int NOT NULL AUTO_INCREMENT,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (Personid)
);

 

# SQL Dates

- MySQL

  • DATE - format YYYY-MM-DD
  • DATETIME - format: YYYY-MM-DD HH:MI:SS
  • TIMESTAMP - format: YYYY-MM-DD HH:MI:SS
  • YEAR - format YYYY or YY

- SQL Server

  • DATE - format YYYY-MM-DD
  • DATETIME - format: YYYY-MM-DD HH:MI:SS
  • SMALLDATETIME - format: YYYY-MM-DD HH:MI:SS
  • TIMESTAMP - format: a unique number

 

# CREATE VIEW

- view : SQL 구문의 result-set 기반으로 한 virtual table

CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;

 

 

 

반응형
LIST