데이터베이스 생성
create database {사용할db이름};

데이터베이스 보기
show database;

내가만든 데이터베이스 사용하기
use {db명};

테이블 생성하기
create table sky.users( # create table [db명, 테이블명]
id int not null auto_increment, # id(고유식별자)
name varchar(20) not null, # name(이름)
age int unsigned not null, # age(나이)
married tinyint not null, # married(결혼여부)
comment text null # comment(자기소개)
created_at datetime not null default now(), # created_at(로우 생성일)
primary key(id),
unique index name_unique(name asc))
comment='사용자 정보'
engine = InnoDB;


사용한 자료형
| int | 정수, 소수를 저장하려면 float, double 자료형 사용 |
| varchar(자릿수) | 가변길이, 고정 길이로 저장하려면 char(자릿수) 자료형 사용 보통 몇백 자 이내의 문자열 처리 |
| text | 긴 글을 저장할 때 사용(몇백 자 이상 문자열 처리) |
| tinyint | -127 ~ 128까지의 정수를 저장할 때 사용 1 또는 0만 저장한다면 boolean과 같은 역할 수행 |
| datetime | 날짜와 시간에 대한 정보 날짜 정보만 담은 date, 시간 정보만 담은 time 자료형도 있음 |
자료형 뒤에 붙은 옵션
| null / not null | null값 허용 여부 |
| auto_increment | 숫자 자동 생성 |
| unsigend | 숫자 자료형에 적용되는 옵션, 음수가 무시되고 0 ~ 4294967295까지 저장 가능 => 나이처럼 음수가 나올 수 없는 컬럼에 적용 |
| zerofill | 숫자의 자릿수가 고정되어 있을 때 사용할 수 있음 예를들어 int(4)로 자료형을 사용했을 때 숫자 1을 넣었다면 0001이 되는 식 |
| default now() | 해당 컬럼에 값이 없을 시 현재 시각을 넣어라 current_timestamp 도 같은 의미 |
| primary key | 로우를 대표하는 고유값인 기본키 설정 |
| unique index | 해당값이 고유해야 하는지에 대한 옵션 |
테이블 자체에 대한 설정
| comment | 테이블에 보충 설명, 필수아님 |
| engine | 엔진의 종류는 여러가지인데 대표적으로 MyISAM과 InnoDB를 많이 사용함 여기서는 InnoDB사용 |
테이블 확인
show tables;

테이블 정보 확인

테이블 삭제
drop table {테이블명};

데이터 생성

데이터 조회

데이터 수정

'DB' 카테고리의 다른 글
| [DB] 데이터 베이스 종류 RDB, NoSQL, In-memory DB (0) | 2024.01.22 |
|---|---|
| [DB] 마리아디비(MariaDB) 로그인 에러 (1) | 2023.11.06 |
| [SQL] 뷰(View) (0) | 2023.03.13 |
| [SQL] 서브쿼리(Subquery) (0) | 2023.03.12 |
| [SQL] CASE 표현 (1) | 2023.03.06 |