BackEnd/DB

ORACLE_DML(SELECT,INSERT,UPDATE,DELETE)

telecaster0 2021. 5. 25. 20:40

오늘은 DML에 관해 배웠다.

위키에 의하면 DML은 Data Manipulation Language로써 데이터 조작 언어로 불리운다.

데이터의 SELECT- 검색(질의), INSERT - 삽입(등록), UPDATE 업데이트(수정), DELETE-삭제  4가지 종류이며

 

  • SELECT

SELECT * FROM [TABLE NAME] ; 을 입력하면  TABLE NAME에 관한 정보를 불러와준다. 

SELECT * FROM S_MT WHERE STORECODE='K001';    (S_MT : TABLE NAME), (STORECODE = COLUMN NAME)

 

S_MT라는 TABLE에 관해 보여준다. WHERE(STORECODE=K001)이라는 조건에 만족하는

즉 , STORECODE=K001에 만족하는 S_MT라는 TABLE을 값을 보여주는 구문이다.

좀 더 간단히 말하자면... S_MT라는 테이블에 K001에 해당하는 값을 보여주게 된다!

 

SELECT * FROM USER_TAB_COLS WHERE TABLE_NAME = ['FIRST_TABLE'];

 

FIRST_TABLE은 TABLE이름이고 나머지는 함수? 수식?이다.


  • INSERT

 

INSERT INTO [TABLE NAME] (COLUMN NAME1, COLUMN NAME2)

  VALUES ('COL1','COL2');   라고 코딩해주면  NAME1 COLUMN에 COL1이라는 값을 삽입해 주고, NAME2 COLUMN에 COL2라는 값을 삽입해주게 된다.  즉 말 그대로 데이터의 삽입 INSERT를 해주는 함수다.


  • UPDATE

 

UPDATE S_MT SET price = price -500 where MENUCODE = 'BN';

S_MT라는 TABLE의 PRICE라는 COLUMN에 -500을 해준다. WHERE(조건)은 MENUCODE 가 BN을 만족할떄,

최근에 배웠던 자바와는 다르게 조건이 뒤에, 실행문이 앞에오는 구조로 이루어졌다.

정리해보자면

UPDATE [TABLE NAME] SET [COLUMN NAME] = [조건을 만족할 때 취하고자 하는 명령] WHERE [조건 COLUMN NAME]=[조건에 일치? 원하는? 값]

 

 

UPDATE CU SET CU_NAME=['이름'], CU_PASSWORD=['비밀번호'], CU_PHONE=['연락처'] WHERE CU_ID ='NICE';

지금 우리는 배달의민족같은 가상음식주문서비스에 관한 DB를 만들고있다.

위 구문은 개인회원의 정보수정에 관한 구문인데. 로그인이 완료되었다는 가정하에 DB,혹은 백엔드에서 이루어지는 구문을 만든 것이다.

[] 대괄호의 값에 원하는 수정 정보값을 넣어주고 마지막에 조건 WHERE가 해당 ID(여기선 NICE)에 해당될 때 정보를 바꿔준다는 의미이다

 

UPDATE [TABLE NAME] SET