MySQL
[MySQL] 6. 테이블 생성과 제약 사항 연습
Song hyun
2024. 5. 30. 09:31
728x90
반응형
[MySQL] 6. 테이블 생성과 제약 사항 연습
*기본 개념 돌아보기
1. 테이블 생성하기
2. 기존 테이블에 PK 추가하기
*기본 개념 돌아보기
(1) 테이블(Table): MySQL에서 테이블은 데이터를 저장하는 기본적인 단위다.
(2) 테이블은 열과 행으로 이루어져 있으며, 각 열은 데이터 유형을 나타내는 데이터 형식을 가지고 있다.
(3) 데이터베이스에서 테이블은 다음과 같은 정보를 포함할 수 있다.
ㄴ테이블 이름, 열 이름, 열 데이터 형식, 빈 값 허용 여부, 기본값, 제약 조건(PK,FK...), 인덱스
ㄴUnique Key(유일키): 유일키를 설정하면 데이터를 삽입할 때마다 체크하게 된다. (중복값 허용 x)
(4) SQL(Structured Query Language)는 데이터베이스 관리 시스템(DBMS)에서 데이터를 관리하고 검색하기 위해 사용하는 표준 데이터베이스 언어이다. (=ANSI)
1. 테이블 생성하기
*varchar: 동적으로 늘어나는 char 형식의 데이터 타입. 입력한 크기만큼 줄어들거나 늘어난다. 최대 50글자까지 담을 수 있다.
create database mydb;
use mydb;
-- 테이블 생성
create table student(
student_id int,
name varchar(50) not null,
grade int not null,
major varchar(50) not null
);
select*from student;
desc student;
-- 과목 테이블 생성
create table subject(
subject_id int,
subject_name varchar(50) not null,
credit int not null,
department varchar(5),
professor char(50) not null
);
select*from student;
2. 기존 테이블에 PK 추가하기
*기본 키(Primary key)를 추가하면, 해당 열에 대한 중복값이 저장될 수 없고, 데이터 검색 속도가 향상된다. 기본 키는 테이블 내에서 고유한 값이어야 하고, 해당 열에 대해 not null 제약 조건이 붙어야 한다. (빈 값 x)
-- 이미 생성된 테이블에 기본 키를 추가하는 방법
alter table student add primary key(student_id);
desc student;
*전체 코드
create database mydb;
use mydb;
-- 테이블 생성
create table student(
student_id int,
name varchar(50) not null,
grade int not null,
major varchar(50) not null
);
select*from student;
desc student;
-- 과목 테이블 생성
create table subject(
subject_id int,
subject_name varchar(50) not null,
credit int not null,
department varchar(5),
professor char(50) not null
);
select*from student;
-- 이미 생성된 테이블에 기본 키를 추가하는 방법
alter table student add primary key(student_id);
desc student;
-- 사전 기반 지식: 데이터가 들어가 있는 상태에서 빈 값이 포함되어 있다면, 기본키 추가가 불가능하다.
-- 즉, NULL 값이 있어서는 안 된다.
alter table subject add primary key(professor);
desc subject;
728x90
반응형