본문 바로가기
비전공자의 개발공부(연재)

15강.데이터베이스<DB>

by 코딩하는 근근 2022. 3. 30.
728x90
반응형

안녕하세요 코딩하는 근근이입니다.

 오늘은 데이터베이스 관련한 강의를 진행하도록 하겠습니다.

 

 

 

데이터 베이스(DB, database) 란

쉽게 얘기하면 데이터의 저장소입니다. 

어렵게 얘기하면 여러 사람들이 공유하고 사용할 목적으로 통합 관리되는 데이터들의 모임입니다.

사실 우리가 프로그램하는 전체적인 공부 범위중에 가장 깊고 넓다고 생각합니다.

그만큼 중요하다는 말입니다.  하지만 우리는 주니어 개발자가 목표기 때문에 데이터베이스는 주니어 개발자 수준으로만 알려드리고자 합니다. 나중에 기회가 된다면 깊숙한 부분은 알려드릴 게요.

 

 

데이터베이스는 DDL문과 DML문,  DCL문이 있다.

1. DDL(Data Definition Language)

2. DML(Data Manipulation Language)

3. DCL(Data Control Language)

 

1. DDL(Data Definition Language) 데이터 정의 언어

 - 테이블의 구조나 관계를 생성하는 데 사용되며, CREATE, DROP, TRUNCATE, ALTER가 있습니다.

 

2. DML(Data Manipulation Language) 데이터 조작 언어

 - 테이블에 데이터 검색, 등록, 수정, 삭제하는 데 사용하며 SELECT, UPDATE, DELETE, INSERT문 등이 있습니다.



3. DCL(Data Control Language) 데이터 제어 언어

 - 데이터의 보안, 무결성, 회복, 병행 수행제 등을 정의하는 데 사용한다.

 - 데이터베이스의 사용 권한을 관리하는 데 사용되며 GRANT, REVOKE, COMMIT, ROLLBACK 등이 있다.

 - COMMIT과 ROLLBACK 명령어는 TCL(Transaction Control Language)로 트랜잭션을 제어하는 명령어로 구분된다.




이 중에서 오늘 우리가 공부할 부분은 1번 DDL문의 create 명령문을 사용할 예정입니다.

데이터베이스는 쉽게 얘기하면 정형화된 데이터 저장소라고 생각하면 이해가 편하실 겁니다.

 

위 UI를 참조하여 create 문을 간략하게 만들어볼게요.

( 일단 우리는 mysql을 사용합니다. 추후 java 로 넘어갈 때는 oracle을 사용하던지 그대로 mysql을 사용할 수 있는데  프로그램과 마찬가지로 DB도 하나를 제대로 알면 나머지 들은 비슷비슷합니다. 물론 그것도 깊숙이 배우기 시작하면 차이가 어마 무시하게 나기는 하는데 신입 개발자 기준으로는 거기까지 모르셔도 되겠습니다.)

 

create table member_test(

  idx int(11) auto_increment primary key , 

  name varchar(100) ,

  user_id varchar(40) , 

  user_pwd varchar(40), 

  gender char(1) , 

  email1 varchar(30),

  email2 varchar(50),

  hobby varchar(10)

)

위와 같이 만들 수 있습니다. 여러분이 배우지 않은 부분인데 idx  부분은 primary key라고 해서 자동으로 늘어나는 유일 값이라고 보시면 됩니다. 

 

자료형 설명
int 정수형 자료 구조 입니다.
varchar variable character 의 약자로 가변 형 자료 구조 입니다.
char character로 정형화된 문자형 자료 구조입니다. 

 

varchar와 char의 차의는 쉽게 풀어보면 char는 정확하게 딱 맞는 문자열 (예를 들어 F , M 과같이 한 글자) 인경우에 쓰고 varchar는 사용자마다 입력하는 길이가 다를 때 쓴다고 생각하시면 됩니다. 

 

강의를 보시고 궁금하신 점 이 있으시면 댓글에 문의해주시면 답변을 드리도록 하겠습니다. 

 

자 이제 제가 만들어 놓은 create 문을 실제로 생성시키러 가볼까요!? 

 

http://localhost/myadmin/  을 브라우저 창에 입력하시면 아래와 같은 페이지가 보이실 겁니다.

 

 

우리는 별다른 설정을 하지 않았기 때문에 아이디 : root , 비밀번호 :apmsetup 을 입력하시고 실행을 클릭해주세요.

 

 

 

로그인을 하시면 위와 같은 화면이 나올 거예요 화면 좌측을 보시면  information_schema , mysql , pypmyadmin이라는 것이 보이실 텐데 이게 데이터베이스 명입니다. 하지만 3개의 데이터베이스는 데이터베이스를 관리하는 데이터베이스라고 생각하시면 되고 우리는 해당 데이터 베이스를 건드리지 않고 화면 중간쯤에 보이는 새 데이터베이스 만들기를 실행할 겁니다. 새 데이터베이스 만들기 란에 test_db라고 입력하고 만들기 버튼을 클릭해 주세요.

 

만들기버튼을 클릭하세요.

 

만들기 버튼을 클릭하셨으면 상단과 같은 페이지가 보이실 겁니다. 

자 이제 여기에서 화면 우측 상단에 SQL이라는 탭을 클릭해주세요.

 

 

 

 

클릭하시면 위와 같은 페이지가 보이실 겁니다. 여기에 아까 제가 작성해 드렸던 create 문을 직접 타이핑해보시기 바랍니다.  무조건 본인이 이해가 안 가도 타이핑해보시는 게 본인에게 남습니다. 귀찮으시더라도 꼭 타이핑해보시기 바랍니다.

 

 

실행한 결과가 위와 같이 나타나면 정상적으로 테이블이 생성된 것입니다. 

 

create문 안에 있는 이름들은 칼럼이라고 하고 create table  문 자체는 테이블이라고 합니다. 

데이터 베이스 아래 테이블이 있고 테이블 안에는 칼럼들이 있다~라고 이해하시면 될 거 같네요.

 

이번 강의는  여기까지 하도록 하겠습니다. 다음 강의에는 실제로 데이터를 저장하는 프로그램을 하도록 하겠습니다. 

따라오시느라 고생하셨습니다 ^^

 

728x90
반응형

댓글