Wecode - Project 3 (부트캠프)/Project 3 독학

SQL 복습 - DATA - CRUD 추가/조회/수정/삭제 'Insert/Update/ Delete'

JBS 12 2023. 10. 12. 16:45

UPDATE 'table name ' SET column=''UPDATE 'table name ' SET column=''멘토님이 보고 감탄하신, 내가 쓴 블로그 참고용

 

[MySQL] MySQL 명령문 - DDL, DML, DQL, table/post 생성 수정 추가 삭제, Join

MySQL 은 SQL 명령문 사용해서 명령 내린다. 데이터 / 테이블 생성, 추가 후에는 select와 show로 확인한다. * select: 데이터 조회 * create, insert, add 로 데이터 생성, 추가 SQL문 특징 끝은 항상 세미콜론 (

pm-developer-justdoit.tistory.com


INSERT -기존 테이블에 새 데이터(row)를 추가 (열이 추가 되는 것!기존 열에 수정하려면 update 해야 함)

UPATE - table에 있는 데이터 수정 

DELETE - 데이터를 table에서 삭제 


INSERT

- 회원가입 시 사용자가 입력한 데이터 저장 

- table 이름, column 값 -> 소괄호로 감싸주기 

- VALUES 뒤에는 실제 넣을 값 -> 소괄호로 감싸주기 (앞 칼럼 순서대로 상응하는 값) 

 

INSERT INTO 'table name' (column name1,2,3,4... ) VALUES  (value1,2,3,4...)

INSERT INTO 'table name' value AS row 

: 테이블에 ~열에 해당하는 값을 추가한다

   열 1에 해당되는 데이터 1을 추가

   열 2에 해당되는 데이터 2를 추가

 

데이터가 정상적으로 추가되었는지 확인 SELECT * FROM 'table 이름';

- *는 모든 column의 데이터를 조회 

# INSERT INTO 뒤에는 테이블 명과 칼럼값을 소괄호로 감싸 줍니다.
# VALUES 뒤에는 실제로 넣을 값을 소괄호로 감싸주고 앞서 테이블의 칼럼을 지정한 순서대로 데이터를 넣으면 됩니다.

mysql> INSERT INTO users (name, email, password, age) VALUES ("Rebekah	Johnson", "Glover12345@email.com", "password", 30);
mysql> INSERT INTO users (name, email, password, age) VALUES ("Fabian Predovic", "O'Connell12345@email.com", "password", 31);
mysql> INSERT INTO users (name, email, password, age) VALUES ("Elenor	Gottlieb", "Skiles12345@email.com", "password", 22);
mysql> INSERT INTO users (name, email, password, age) VALUES ("Madge	Ledner", "Quitzon12345@email.com", "password", 23);
...

 

* insert = insert into 

 

* 데이터 추가 한번에 여러 개

(), (), 로 

 

* column이 

VARCHAR 일 때 VALUES에서 " " 쓰고 / INT 일 때 안 씀 


Update 

- 회원정보 수정, 게시물 수정

 

UPDATE table name SET column name ='   '

UPDATE table name SET column1 ='   ' , column2='   ';

UPDATE table name  SET 'column name1: vaule1', 'columun name 2 : value 2', ... WHERE 조건(ex. WHERE email = '${email}' )

: ~ 테이블의 ~열의 data를 수정 

:  ~ 테이블의 ~열 중에서 조건이 ~인 data를 수정 

 

[여러 개의 조건]

UPDATE posts SET content='위코드 3개월 과정을 시작하며...' WHERE user_id=1 AND id=1; 

// posts table이니까, id는 posts_id 

 

데이터 수정된 거 확인하는 법 select * from 'table name'; 

where 는 검색할 때라서 
저장할 때는 필요 없음 

ex. SELECT ~ FROM 'table name' WHERE email='${email}'


Delete 

- 회원 탈퇴, 게시물 삭제, 데이터베이스 저장공간 위해 삭제 

 

DELETE FROM 'table이름' WHERE 'id =1' 

DELETE FROM 'table이름'     // 전체 데이터 삭제

 

SELECT * FROM 'table 이름' // 잘 삭제되었는지 테이블전체 데이터 조회 

DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name [[AS] tbl_alias]
    [PARTITION (partition_name [, partition_name] ...)]
    [WHERE where_condition]
    [ORDER BY ...]
    [LIMIT row_count]