MYSQL사용 방법을 공부해 보겠다.
일단 데이터베이스의 토대는 다음과같다.
데이터베이스 서버> 데이터 베이스 > 테이블(ROW COLUMN VALUE) 로 되어있다.
엇기호와 작은따움표
엇기호
엇기호는` 이렇게 생긴 기호를 의미한다.
사용하는 이유는 데이터베이스명이나 테이블명을 강조하기 위하여 사용한다.
예를들어 테이블중에 select 라는 테이블이 있다고 가정할시 우리가 select라는 명령어를 쓸때
mysql>select * from select
라 하면 오류가 생긴다. 또한 헷갈릴 수 있다. 이때 테이블임을 강조하기 위하여
mysql>select * from select
이러한 방식으로 강조를 해준다.
작은따움표
table의 value를 적을때 따움표를 사용한다. 문자는 'value' 이러한 방식으로 감싸주지만 숫자는 보통 감싸주지않는다.
database,tables 생성하기
mysql>create database `school`;
mysql>create table `student`(id char(20),age int(20));
show 명령어
무언가를 확인하기 위하여 사용한다.
show databases;
show tables;
use 명령어
use <데이터베이스명>
schema
테이블에 저장될 데이터의 구조와 형식을 지정하는것이다.
예를들어 이름이 들어가는곳에 숫자가 들어가면 안된다.
이러한것을 지정할때는 다음의 형식에 만족하여야 한다.
mysql>create table `student`(id char(20),age int(20));
이렇게 형식을 char, int로 구성하여준다.
이때 student양단의 따움표는 ~밑의 ` ->역다운표 이다.
스키마 열람
mysql> desc student; <desc는 descendent로 최신의것을 의미하거나 크기가 큰것을 의미한다.>
+---------+--------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+--------------------+------+-----+---------+-------+
| id | char(20) | NO | PRI | NULL | |
| name | char(5) | NO | | NULL | |
| sex | enum('man','girl') | NO | | NULL | |
| address | char(50) | NO | | NULL | |
| birth | datetime | NO | | NULL | |
+---------+--------------------+------+-----+---------+------
primary key
행을 고유하게 구분지어주는 최소의 정보이다. 모든 테이블에는 단 한개의 primary key 가 존재하여야 한다. 이 하나의 primary key는 여러개의 column이 될 수 있지만 한개정도가 적당하다. primary key 의 coulmn은 반드시 NOT NULL을 포함하여야 한다.
create table `student` (`id` char(20) NOT NULL,`name` char(5) NOT NULL, `sex` enum('man','girl') NOT NULL,`address` char(50) NOT NULL, `birth` datetime NOT NULL, primary key (`id`));
insert value
*value는 '' 으로 감싸고 table 과 column은 ``으로 감싸주자.
insert into student values('1','a1','man','newYork','1995-12-20');
change value
전체 column을 바꾸는 방법
정의
mysql>update <table> set <column>='<values>';
예제
mysql>update student set sex='man';
하나의 value만 바꾸는 방법
정의
mysql>update <table> set <column>=<value> where <primary key>=<value>;
예제
mysql>update student set address='seoul' where id='3';
삭제하기
원하는 row만 삭제하기
정의
delete from <tables> where <primary key>=<value>;
예제
delete from student where id='1';
전체 테이블 삭제하기
1)
정의
delete from <tables>;
예제
delete from student;
2)
정의
truncate <table>;
예제
truncate student;
3)
정의
drop table <table>;
예제
drop table student;