C++

MYSQL 연습 - 2(INSERT, SELECT, UPDATE, DELETE)

니렙에잠이오냐 2019. 6. 8. 15:37

지난번에는 MYSQL설치 및 C++연동을 했었는데 오늘은 간단하게 MYSQL command line client로 데이터베이스를 제어해보겠습니다. 

 

MySql 설치 MySQL 5.7 Command Line Client 실행하면 sql 제어할 있는 콘솔창이 뜨게 됩니다.

패스워드를 입력하라고 하는데 여기에는 MYSQL 설치 입력했던 패스워드를 입력하면 됩니다.

 

다음과 같은 창이 나타났다면 로그인에 성공하신 겁니다.

 

 

우선 데이터베이스 목록을 한번 확인해 보겠습니다.

 

SHOW DATABASES; 명령어를 입력한 엔터를 누르시면 다음과 같은 내용이 나옵니다.

 

현재 생성되어 있는 데이터 베이스의 목록입니다.

 

새로운 데이터베이스를 하나 생성해 보겠습니다.

CREATE DATABASE 데이터베이스 이름; 입력하시면 됩니다. 참고로 대소문자는 중요하지 않습니다. 하지만 가독성을 위해 MYSQL 명령어는 대문자를 쓰도록 하겠습니다.

명령어 입력 후에 다시 SHOW DATABASES; 입력해 데이터베이스 목록을 보면 다음과 같이 추가되어 있는 것을 확인 있습니다.

그럼 이번에는 TEST데이터 베이스를 사용해서 작업을 해보겠습니다.

 

가장 먼저 어떠한 데이터 베이스를 작업할려면 앞으로 우리는 데이터베이스를 작업할 것이다라고 명시적으로 컴파일러에게 알려주어야 의무가 있습니다.

 

USE 데이터베이스 이름;

입력해 보겠습니다.

 

 

위와 같이 Database Changed 나왔다면 잘하신겁니다.

 

SHOW TABLES; 명령어를 사용해서 해당 데이터베이스 내에 존재하는 테이블 목록을 확인해 보겠습니다.

 

아무것도 안나오실 겁니다. 그럼 우선적으로 테이블을 생성해 보겠습니다.

 

그에 앞서 mysql 데이터 타입들에 대해서 아셔야 하는데 다음의 홈페이지를 들어가면 상세히 나와있습니다.

http://www.incodom.kr/DB_-_%EB%8D%B0%EC%9D%B4%ED%84%B0_%ED%83%80%EC%9E%85/MYSQL

 

간단하게 이름과 설명, 작성 날짜가 들어가는 테이블을 만들어 보겠습니다.

위와 같이 입력하면 됩니다.

CREATE TABLE 테이블이름(데이터들 옵션); 형태입니다.

우리가 추가 것은 이름과 설명,작성 날짜라고 했는데 보시면 행에 INT형의 id 추가하는 모습을 보실 있습니다.

Primary key(이하 PK)는 한 개 혹은 여러 개의 칼럼으로 테이블 내의 각 행들을 구별하기 위한 목적을 갖고 있는데 우리는 id값을 primary key 사용하기 위해 추가했습니다. 데이터베이스에서는 int형의 처리가 가장 빠르기 때문에 주로 int형을 primarykey 사용합니다. NOT NULL 키워드가 보이는데 NOT NULL 해당 데이터가 NULL값을 가질 없게 반드시 값을 입력하게 만듭니다.

 

테이블이 생성되었는

확인을 위해 SHOW TABLES; 입력합니다.

 

생성이 되었군요. 테이블의 속성을 확인하고 싶다면

DESC 테이블명; 입력해 봅니다.

이제 테이블을 만들었으니 해당 테이블을 이용해 데이터를 삽입해 보겠습니다.

 

삽입 명령어는 INSERT INTO 테이블명(데이터 이름들) VALUES(데이터 값들); 이루어져 있습니다. 아래 같이 Query OK 뜬다면 삽입이 되었다는 뜻입니다.

 

이제 삽입이 되었는지 확인해 보겠습니다.  

SELCT * FROM 테이블명; 입력합니다

별도의 조건문 없이 해당 테이블의 모든 데이터를 가져오는 명령문 입니다.

 

되었다면 이번에는 삽입한 데이터의 값을 한번 바꾸어 보겠습니다.

명령문은 UPDATE 테이블명 SET 데이터이름 = '' WHERE id=1; 입니다.

WHERE id 통해 원하는 데이터만을 골라서 값을 바꿀 있습니다.

 

이번에는 데이터를 삭제 보겠습니다.

DELETE FROM 테이블명 WHERE 조건; 입니다. 삭제된걸 확인 있습니다.

 

 

오늘은 매우 기초적인 INSERT,SELECT,UPDATE,DELETE에 대해 공부해 보았습니다. 다음에는 조금 더 심화적인 내용과 C++을 이용한 mysql제어를 공부해 보도록 하겠습니다.