티스토리 뷰

데이터베이스에 여러 기본적인 용어들도 있습니다만 일단 그 부분은 실무를 위한 부분에 있어서는


배워가시면서 익히실 수 있으신 부분으로 상세한 설명은 없이 MySQL을 이용한 기본적인 데이터베이스


구축법을 살펴보도록 하겠습니다.


1. 데이터베이스 생성


1) workbench 실행


윈도우의 시작버튼-> MySQL-> MySQL Workbench 8.0 CE 를 클릭해서 실행합시다.


그러면 Workbench 실행 화면이 나오는데  Local Instance My-SQL을 누르면 


비밀번호 입력창이 뜨는데 이전에 설정해둣 root의 비번을 입력하시면 초기화면이 뜹니다. 






초기화면에 대한 설명은 아래 그림을 살펴보도록 합시다.





2) 도서관 데이터베이스 생성하기


데이터베이스 목록창 위의 탭에서 Schemas를 클릭하시면 윗 부분의 서버관리창이 Schemas로 바뀌게 됩니다.


서버관리창의 빈 공간에 오른쪽 마우스 클릭을 하면 Create Schema -> Create Database를 선택합니다.





그러면 새 스키마 창이 나타나는데 일단 이름을 입력해 봅시다. 여기서는 도서관 데이터베이스를 만들예정이므로


librarydb 로 입력하면 쿼리창위의 이름이 librarydb - schema로 나타납니다. 


여기서 아래의 apply 버튼을 누릅니다.




그 다음 나타나는 대화창에서 apply -> finish를 누릅니다. 




이제 아무것도 내용은 없지만 껍데기만 있는 librarydb 데이터 베이스가 형성이 되었습니다.


3) 테이블 생성


이제 2)에서 만든 도서관 데이터베이스에 책과 논문 테이블을 생성해 보겠습니다.


물론 자세하게 하면 필요한 정보가 있을 것이지만 여기서 일단 필요한 정보는 다음의 표 내용을 담을 것입니다.


일단 프로그래밍의 지식이 있으신 분들이라면 데이터 형식이나 여타 다른 부분들의 이해가 빠르시겠지만


지식이 없으신 부분이라면 쉽지 않습니다. 일단 여기서는 간단하게만 말씀해 드리고 다음 소개에서


자세하게 설명해 드리도록 하겠습니다. 왜냐면 일단 여기서는 데이터베이스를 한번 만들어 보는것이


우선이기 때문입니다. 일단 여기에서 나눈 부분이 전부는 아닙니다. 여러분의 필요에 따라 더 추가될수도


더 빠질수도 있습니다. 지금은 어디까지나 예시입니다. 여기서 Null 허용이라는 것은 입력이 없어도


괜찮다는 얘기입니다. Null 허용을 하지 않는다는 것은 


데이터베이스 작성시 입력이 반드시 들어와야 할 부분입니다.


아래는 책 테이블 입니다.


 열 이름(한글)

 영문열 이름

데이터형식 

 길이

Null 허용 

 제목

 bookTitle

문자(CHAR) 

30글자 

 저자

bookWriter 

문자(CHAR)

20글자

 X

 출판일

bookDate 

날짜(DATE) 

날짜형 

 출판사

bookPublisher 

문자(CHAR) 

10글자 

페이지수 

bookAmount 

숫자(INT) 

정수 


다음은 논문 테이블 입니다.


 열이름(한글)

영문열 이름 

데이터형식 

길이 

Null 허용 

 논문제목

 paperTitle

 문자(CHAR)

50글자 

 X

 논문저자

 paperWriter

 문자(CHAR)

20글자

 X

 출판학회

 paperAsso

 문자(CHAR)

10글자

 X

 출판일

 paperDate

 날짜(DATE)

 날짜형

 X

 핵심어

 paperKey

 문자(CHAR)

 40글자

 X


이제 이렇게 구성한 데이터베이스를 MySQL로 직접 만들어 봅시다.


왼쪽위의 Navigator에서 librarydb를 찾으셔서 Table에서 오른쪽 마우스 클릭을 하시면 


나타나는 Create Tabled을 클릭합니다.



오른쪽에 Table 관련 창이 나타나게 되는데 이름에 bookTBL이라고 입력하고 Column name탭 아래의


사각형을 클릭하고 다음과 같이 입력을 해 둡니다. 데이터 변형은


Datatype아래의 칸을 클릭하시면 왼쪽 화살표가 뜨는데 거기서 변경하시면 됩니다.




앞에서 짜 두신 데이터베이스의 열을 입력하고 apply를 클릭하면 경고창이 뜨는데 그냥 ok 누르고


무시합니다.




그러면 다음과 같이 SQL문이 자동으로 생성되게 되는데 이 문장은 쿼리에 그대로 입력해도


저희가 지금까지 해온 작업을 한게 됩니다. 하지만 아무래도 처음 익히는 입장이다 보니


GUI로 (그래픽 유저 인터페이스)로 작업하는게 아무래도 편하죠. 


지금은 찬찬히 배워보도록 합시다.  여기서 apply를 누르면 다음의 창이 뜨고



여기서 Finish를 눌러서 완성 시킵니다. 



이제 논문 테이블을 만들어 보도록 합시다. 앞의 예시를 따라서 다음과 같이 만들어 봅시다.


PK와 NN을 제가 하신대로 설정해 둡시다. PK는 Primary Key로써 기본키입니다. 


NN 은 Not Null이라는 것으로 입력칸을 빈칸으로 남겨두면 안된다는 것입니다.




다시 Navigator로 들어가셔서 librarydbf를 클릭해 보시면


형성된 table이 보이게 됩니다.





4) 데이터 입력


이제 만들어진 테이블에 데이터를 입력해 봅시다. 


Navigator의 Schemas 에서 librarydb->Tables->booktbl 을 선택한후 


마우스 오른쪽  버튼을 클릭해서 select rows - limit 1000을 선택합니다.




위 그림과 같이 앞에서 만들어둔 열이 나타나게 되는데


엑셀 입력하듯이 입력하시면 됩니다.


그리고 apply -> apply -> Finish 를 누르시면


아주 간단하나마 데이터베이스가 만들어 지게 됩니다.





5) 입력한 데이터의 간단활용


여기서는 어디까지나 간단히 MySQL을 살펴보는 것이므로 그 상세에 대해서는 뒤에서 보도록 하겠습니다.


여기서는 가볍게 아 활용을 이렇게 하는구나 정도로만 보세요


SQL 문을 입력해서 실행해 볼 수 있는 쿼리창을 열어 봅시다.


File -> New Query Tab 을 클릭하시거나 아래 그림에서의 아이콘을 클릭합니다.


그럼 오른쪽에 SQL 입력창이 뜹니다. 


그리고 여기에서 만든 librarydb를 선택해 줍니다.그러면 색깔이 진하게 되게 되는데


여기에서의 SQL 문이 librarydb에 적용이 된다는 뜻입니다.




- select 문


다음의 문장을 입력해 봅시다.


select * from booktbl;


그리고 다음의 세가지 방법중 하나로 쿼리를 실행해 봅시다.


- 쿼리 입력창 위의 번개표시를 클릭합니다.

- ctrl + shift + Enter 키를 누릅니다. 

- Query -> Execute (All or Selection) 을 선택합니다.


그럼 실행결과가 아래의 결과창에 뜹니다.


select 문의 기본형식은 


select 열이름, 열이름, from 테이블 이름 where 조건


의 형태를 가집니다.


그리고 SQL 문장의 마지막은 반드시 세미콜론(;)을 입력해야 합니다. 그래야 하나의 명령문장으로 이해합니다.


다음의 그림에서 각각 테이블 이름을 통해 선택된 열을 보여주는 과정을 보여줍니다.


한번씩 실습들 해 보세요


왼쪽은 책이름과 출판사만 보여달라는 것이고 오른쪽은 삼국지라는 글자가 들어간 책을 검색하는 것이죠


위의 예시는 어디까지나 문장 하나를 실행한 것이므로 하나의 탭에 결과가 표현이 됩니다.


하지만 두개의 문장이 있다면 SQL은 주어진 명령어를 다 실행하므로 아래와 같이 두개의 탭에 나누어져서


결과가 보여지게 됩니다.




따라서 원하는 문장의 효과만 보실려면 그 명령행만 선택하신채 실행명령을 내리는것이 낫습니다.


이제 SQL 문으로 새로운 테이블도 한번 만들어 봅시다. 


Create Table `my testTBL` (id Int);


create table은 테이블을 생성하라는 것이고 backtick(`)으로 둘러쌓인 부분은 테이블의 이름이 됩니다. 하지만 이 문장을 쳐 넣은 다음


쿼리를 실행해도 바로 테이블이 반영되지는 않습니다. 


이럴경우 table에 오른쪽 마우스 클릭 -> refresh all을 선택하시면 반영이 되게 됩니다.



그럼 만든 테이블은 어떻게 삭제를 할까요??


오른쪽 마우스 클릭을 해 보시면 Delete가 없으셔서 당활하실텐데 Drop이 바로 테이블 삭제 명령입니다.


.

위의 과정을 따라가시면 바로 테이블이 삭제된 것을 보실 수 있습니다.


요번장에서는 데이터베이스 생성, 자료입력, 간단한 SQL 그리고 테이블 삭제등을 살펴 보았습니다

댓글