데이터베이스를 먼저 생성합니다.
생성한 데이터베이스를 사용하여 그 안에 테이블을 만들어줍니다.
테이블 생성
idx , age , userid...등은 컬럼명으로 JavaScript 에서 변수명이라 생각하면 이해하기 쉽습니다.
MySQL 에서는 대 소문자를 구분하지 않습니다.
1. int (정수형)
- int는 정수값(숫자)을 저장할 때 사용합니다.
- 음수 , 양수 , 0 등 숫자 데이터를 저장하는 데 적합합니다.
- 예를 들어, 사용자 ID, 나이,점수,카운트 등 숫자 데이터를 다룰 때 사용합니다.
예시 : idx int auto_increment primary key
여기서 auto_increment 란 숫자 자동 증가 입니다. idx에 값을 주지않아도 자동으로 하나씩 추가할때마다 +1 씩 증가합니다.
primary key 란 데이터베이스 테이블에서 각 행을 고유하게 식별하는데 사용되는 컬럼입니다.
- 고유성 : 프라이머리 키는 테이블 내에서 각 행을 고유하게 식별합니다. 즉, 같은 값이 두 번 이상 나타날 수 없습니다.
- NULL 불가 : 프라이머리 키 컬럼은 NULL 값을 가질 수 없습니다. 모든 행에 반드시 값이 있어야 합니다.
- 인덱스 : 프라이머리 키는 자동으로 인덱스가 생성되어 검색 속도가 빨라집니다.
예로 idx 컬럼이 프라이머리 키로 설정되어 있으면 각 행의 idx 값은 고유해야 하며 NULL 값을 가질 수 없습니다. 또한 이 컬럼을 기준으로 데이터를 빠르게 검색할 수 있습니다.
프라이머리 키는 테이블의 무결성을 유지하고 데이터의 일관성을 보장하는 중요한 역할을 합니다.
2. varchar (문자열)
- varchar는 문자열(글자) 데이터를 저장할 때 사용합니다.
- 괄호 안에 최대 문자 수를 지정할 수 있습니다. 예를 들어 varchar(30)은 최대 30자까지의 문자열을 저장할 수 있습니다.
- 이름 , 아이디 , 비밀번호 , 전화번호 등 문자를 다루는 데이터를 저장하는 데 적합합니다.
예시 : name varchar(30) not null
여기서 not null 은 해당 열(컬럼)에 빈 값(null 값)이 들어가는 것을 허용하지 않겠다는 의미입니다.
즉, 필수 입력값을 요구하는 제약 조건입니다.
날짜:
indate datetime default now() 는 데이터베이스 테이블에서 indate 컬럼이 행이 추가될 때마다 현재 날짜와 시간으로 자동 설정되도록 함
- indate : 컬럼 이름 , 날짜와 시간을 저장합니다.
- datetime : 데이터 타입 입니다. 날짜와 시간을 함께 저장할 수 있는 형식
- default now() : 기본값을 현재 날짜와 시간으로 설정합니다.
요약 ::
create table my_test(
idx int auto_increment primary key, -- 숫자형
name varchar(30) not null, -- 최대 30자의 문자열
age int , -- 숫자형
userid varchar(20) not null, -- 최대 20자의 문자열
userpw varchar(20) not null, -- 최대 20자의 문자열
tel varchar(20), -- 최대 20자의 문자열 null 허용
indate datetime default now() -- 날짜와 시간(현재)
);
테이블 삭제
drop table if exists 테이블명;
테이블 삭제 후 생성
truncate table 테이블명;
테이블 내용 삭제
delete from 테이블 where 조건;
데이터 베이스 삭제
drop database db명;
'Database > SQL' 카테고리의 다른 글
데이터베이스 Data 추가/수정/삭제/확인 (0) | 2024.09.09 |
---|---|
데이터베이스 컬럼 추가 / 삭제 / 수정 (0) | 2024.09.09 |
Join (0) | 2024.07.09 |
transaction(트랜잭션) (0) | 2024.07.09 |
Sequence (0) | 2024.07.09 |