Database (DB)/MySQL

[MySQL] 04. CRUD (데이터를 추가, 읽기, 수정, 삭제)

또롱또 2020. 3. 8. 07:45
728x90

저는 새로 컴퓨터를 켰으므로,

cmd를 열어서 다시 MySQL을 실행해야합니다.

경로 입력하고, mysql -uroot -p 그리고 비밀번호까지 치신다음에 저번에 만든 테이블이 잘 있나 확인하겠습니다.

처음에 바로 show tables; 를 썼다가 에러가 나왔는데, 이유가 데이터베이스를 선택 안하고 테이블을 바로 찾으려 해서 입니다.

USE EXAMPLE_01;로 데이터베이스를 먼저 고르고, SHOW TABLES; 하니까 어제만든 TABLE_01이 잘 나오는데까지 확인했습니다.

 

이 과정은 점차 익숙해 지실겁니다.

 


 

처음에 데이터베이스를 Input, Output, 즉, 입출력에는 4가지 방법이 있다했습니다.

1. 데이터를 테이블에 추가하고 - Create / Add

2. 만들어진 데이터를 읽고 - Read

3. 필요한 내용을 데이터에 업데이트하고 - Update

4. 필요없는 내용을 데이터에서 지우고 - Delete

 

일단 제일 처음단계인 데이터를 추가해보겠습니다.

전 포스팅에서 세로줄들인 Column을 다 만들어 놨으니

그거에 맞게 가로줄을 추가해 주시면 됩니다.

일단 추가할 내용은, 첫번째 가로줄인 1, MySQL, Learning now, 2020-03-06, Kevin 입니다.

INSERT INTO 테이블이름 (세로줄이름1, 세로줄이름1, 세로줄이름1....)
VALUES (넣고싶은값1, 넣고싶은값2, 넣고싶은값3....);

이 코드가 가로줄을 추가하는 코드입니다.

 

그럼 이제 추가해 보겠습니다.

그 전에, 혹시 테이블이 어떤 모양을 하고있는지 궁금하시면

DESC 테이블이름;

 이 코드를 입력해 주시면 됩니다.

이렇게 나오게 되고, 이제 저기 보이시는대로 입력하시면됩니다.

먼저 number를 입력해야하는데, extra에 보시면 auto_increment가 있습니다, 즉 값을 지정하지않으면, 자동으로 1씩 증가합니다. 즉, 자동으로 올라가기 때문에, 따로 코딩을 해주시지 않아도 괜찮습니다.

문장이나 단어들은 ' ' 이 따옴표 안에 넣어주시고, date를 써야하는곳에, '2020-03-06'을 쓰셔도 좋지만, NOW()라고 쓰실경우 지금 현재날짜를 가져다 줍니다. (그냥 편의를 위한겁니다.)

 

이제 추가가 끝났습니다.

 

추가했으니, 잘 들어갔나 확인을 해야합니다. 여기서 두번째 작업인 데이터를 읽는다를 하겠습니다.

SELECT * FROM 테이블이름;

읽는건 만드는거에 비하면 훨씬 간략합니다.

간단히 이해하자면 Insert가 무언가를 삽입하다 라는 뜻이므로, 테이블에 내 데이터를 넣고,

Select(선택하다), 그 테이블에서 데이터를 선택해서 본다. 라고 이해하시면 되겠습니다. 

물론 기억안나시면 구글 검색엔진 이용하시면 됩니다 언제든지.

 

그럼 나머지 데이터들도 다 넣어주겠습니다.

 

데이터를 넣으셨으면 항상 확인하는 습관을 갖으시면 좋습니다.

 

데이터를 선택할때, 보시면 number, title만 간략하게 보고싶을 수도 있습니다.

이럴때는, 

SELECT 세로줄이름1, 세로줄이름2... FROM 테이블이름;

이렇게 보고싶은거만 볼 수도 있습니다.

이 외에도 Number 순서를 큰수가 먼저오고 작은수가 아래로 가게 할 수도있고, (ORDER BY NUMBER DESC;)

더 자세하신 내용은

https://www.w3resource.com/mysql/basic-select-statement/mysql-basic-select-statement.php

여기서 보실 수 있습니다.

 

다음으로는, 이제 데이터를 업데이트/수정 하려고 합니다. (3번째 단계입니다.)

UPDATE 테이블이름 SET 바꾸고싶은세로줄이름1= '값1', 바꾸고싶은세로줄이름2= '값2' WHERE 세로줄기준이름 = '값';

코드만 봐서는 어려울 수 있습니다..

직접 보여드리자면,

여기서 저는 2번이 Oracle에 description을 ASAP로 바꾸고 date를 2020-05-07 으로 바꿔보겠습니다.

이렇게 작성하시면 됩니다.

확인해보면,

잘 변경된걸 확인할 수 있습니다.

 

이제 마지막으로 필요없어진 데이터를 삭제하는 방법입니다.

3번 MongoDB를 지워보도록 하겠습니다.

DELETE FROM 테이블이름 WHERE 세로줄기준이름='값';

저는 제가 보기도 편하고 빠르게 입력할 수 있어서 다 대문자로 보통 쓰는편입니다. 딱히 오류도 안나고..

그래도 대소문자 맞춰서 쓰는걸 연습하는게 좋습니다. 

 

삭제가 잘 되었다 하니, 확인을 해보면,

잘 지워졌습니다.

 

이렇게 CRUD 추가, 읽기, 수정, 삭제를 모두 봤습니다.

추가, 수정, 삭제는 뭐 크게 쓰는게 다르진 않지만, 읽는부분에서는 이렇게 읽을수도, 저렇게 읽을수도 있으니,

SELECT 을 연습하시면 좋겠습니다.

 

 

* 수정, 삭제할때 WHERE을 써서 어디서 수정하고, 어디서 삭제할지 정해줍니다.

이걸 안써도 뭐 수정되고 삭제는될텐데, 안써주면 모든 데이터가 수정되고,

모든데이터가 삭제되는데 이럴경우는 보통없으니 저는 처음부터 WHERE를 쓰시라고

위에서 WHERE안쓰는걸 말씀 안드렸습니다.

(다른사람들과 협업해서 뭐 하는데, 실수로 다 지워버리면 큰일이겠죠?)

그래도 간간히 전체다 똑같은 값을 줘야할 때도 있으니, 그땐 WHERE 뒤를 다 안쓰시면 됩니다.

 

여기까지는 MySQL뿐만이아니라, 모든 SQL에서 쓰는 공통된 부분이었습니다.

다음 시간에는 관계형데이터베이스인 MySQL에 대해 본격적으로 알아보겠습니다.

728x90