[Web] MySQL 기본

Database - DBMS

SQL  ( Structured Query Language)
데이터를 보다 쉽게 검색하고 추가, 삭제, 수정 같은 조작을 할 수 있도록 고안된 컴퓨터 언어이다. 관계형 데이터베이스에서 데이터를 조작하고 쿼리하는 표준 수단이다.

http://www.ciokorea.com/print/35385


mysql 문법

database 생성
create database 'db name';

유저 생성 및 권한부여
create user 'username'@'localhost' identified by 'password';
grant all privileges on 'db name'.* to 'account name@'localhost';
grant all privileges on 'db name'.* to 'account name@'%';

('%' : 어떤 클라이언트에서든 접근 가능  'localhost' : 해당 컴퓨터에서만 접근 가능 )

데이터베이스 접근
mysql -hlocalhost -uconnectuser -p connectdb
Enter password :
(localhost대신 127.0.0.1도 가능하지만 내 컴퓨터에선 오류가 발생했다.)

나는 임시 유저로 이렇게 만들어줬다. connectuser@localhost / 1234

mysql버전 확인
select version()

mysql 사용법을 공부하기 위한 데이터베이스 파일을 다운로드 받자
링크 : https://github.com/connect-boostcamp/boostcourse_fullstack_web/blob/master/part2/examples.sql

cmd 창에서 examples.sql 파일을 다운로드한 위치로 이동해서 아래 명령어를 실행하면 테이블들이 생성된다.
mysql -uconnectuser -p connectdb < examples.sql

생성된 테이블의 구조를 보고 싶을 때는
desc 'table name' (혹은 DESCRIPTION 도 사용 가능)

LIKE 키워드
와일드 카드를 사용해서 특정 문자를 표현한 값에 대한 조건을 처리 할 수 있다.
% : 0부터 여러개의 문자열
_ : 단 하나의 문자열

CAST 형변환
cast('expression' as 'type')

속성 이름 바꾸기
alter table 'table name' change 'attribute name' 'new name' 'type'

이때 column의 길이가 새로 지정하려는 type보다 길면 오류가 반환되고 속성을 변환할 수 없다.
char과 varchar의 차이점은 char은 고정 길이 문자열 자료형이고 varchar은 가변길이 라는 것인데 자주 길이가 변하는 자료일 경우 char을 쓰는 경우 비효율 적이다. varchar은 데이터의 길이만큼 그 크기가 할당되는데 길이를 매번 계산해야 하기 때문에 미세하게 느릴 수 있지만, 속도 차이가 char을 쓰는 것과 크게 차이가 없으므로 varchar을 쓰는 것이 더 낫다고 한다.

No comments:

Powered by Blogger.