사용버전 :
Windows 7 Ultimate K 64bit
MySQL Community Server 5.7.17 <GPL>
MySQL Workbench 6.3 CE
참고사이트 :
https://opentutorials.org/ ← 최고의 사이트!
일단 `table` 데이터베이스를 만들어보자.
(테이블뿐만 아니라 전반적인 MySQL에 대한 지식은 https://opentutorials.org/course/195 에서 참고하자.)
이제 `introduce` 라는 테이블을 만들어보겠다. 테이블을 만들기에 앞서 내가 어떤 데이터베이스에 명령을 내릴 것인지
명령어로 지정해줘야한다. 쉽게말해 내가 데이터를 삽입하거나 조회 할 것인데, 어떤 데이터베이스 안을 들여다 볼 것인지
선택해 주는 것이다.
먼저 show databases;를 입력한 후 내가 선택하고픈 데이터베이스를 선택해볼것이다.
(table 데이터베이스를 선택(?) 성공한 화면)
USE 데이터베이스명;
ex) use table;
당연히 이 명령어를 실행하지않으면 데이터베이스를 조회할 수도 없고 테이블을 생성할 수도 없다.
테이블을 생성하기에 또! 앞서 이제 테이블 안에 어떤 내용물(테이블)이 있는지 살짝 들여다보자.
(비어있는 모습)
지금까지 한 것을 요약하자면,
① CREATE DATABASE `table`; 으로 table이라는 데이터베이스를 만들었으며,
② USE table; 으로 table이라는 데이터베이스를 사용하도록 선택했다.
③ 지금은 SHOW TABLES; 라는 명령어로 table 데이터베이스의 테이블 목록을 보았다.
그 결과 Empty set이라는 결과가 나왔는데, table 데이터베이스에는 테이블이 없다는 뜻이다.
SHOW TABLES;
현재 use(선택)한 데이터베이스의 테이블 목록을 나열한다. (데이터베이스 이름이 `table`인데.. 헷갈리면안된다.. 잘못만든듯)
그럼 이제 진짜로 테이블을 만들어보자.
(introduce라는 테이블을 생성하고, age,name이라는 행을 만드는데 성공)
참고로 테이블을 생성할 땐 꼭 하나 이상의 열을 만들어줘야한다.
관계를 글로 설명하자면... 데이터베이스(Database) 안에 테이블(Table)들이 있고 테이블 안에는 그 내용물들이 있다.
내용물에는 행(Row),열(Column)이 있으며, 행과 열이 맞물리는곳에 필드(Field)가 있다. 결론적으로
age(나이)라는 열을 만들었고, 내가 19세라는 데이터를 입력하면 1행에 19세 라는 필드가 입력된다.. 라고할까나..
https://s3.ap-northeast-2.amazonaws.com/opentutorials-user-file/module/98/320.png ← 관계를 나타낸 사진
결론적으로..
CREATE TABLE 테이블명 (
칼럼(Column)명 데이타형,
칼럼명2 데이타형
);
(한줄마다 콘솔상에서 엔터를 쳐주고 계속 이어서 치면 된다. 마지막에 세미콜론이 명령을 최종적으로 보낸다
한줄에 다 쓸수있으나 가독성을 위해서 연이어 줄을 이어서 타이핑한다)
`테이블명` 테이블을 만들고, `칼럼명`행을 `데이타형` 형으로 생성한다. 라고 해석하면 되겠다.
데이타형 표 : https://opentutorials.org/course/195/1537
ex) CREATE TABLE `introduce` (
`age` tinyint,
`name` char(4)
);
뒤에 붙은 NOT NULL과 PRIMARY KEY는 나중에 알게되지만.. 의미만 해석하자면
NOT NULL - 해당 열의 필드가 비워지면 안된다.
PRIMARY KEY - 기본키로 설정한다.
이제 다시 SHOW TABLES;를 입력해 테이블들의 목록을 보자..
(introduce 테이블이 만들어진 것을 확인할 수 있다.)
'옛날' 카테고리의 다른 글
5-1.[Console] Table의 간단한 조회 (DESC,SELECT*FROM) (0) | 2016.12.28 |
---|---|
4-2.[Workbench] 테이블[Table] 생성 (0) | 2016.12.28 |
3-2.[Workbench] Database 삭제(DROP) (0) | 2016.12.28 |
3-1.[Console] Database 삭제 (DROP) (0) | 2016.12.28 |
2-2 [Workbench] MySQL 로그인,데이터베이스 생성 (0) | 2016.12.28 |