database
Download
Skip this Video
Download Presentation
Database 실습

Loading in 2 Seconds...

play fullscreen
1 / 19

Database 실습 - PowerPoint PPT Presentation


  • 133 Views
  • Uploaded on

Database 실습. 김기헌 [email protected]kr http://csdblab.chonbuk.ac.kr/~khkim. 내용. 쇼핑몰 프로그램으로 배우는 SQL 카테고리 관리. 카테고리 관리. 카테고리 관리 카테고리 목록 , 추가 , 수정 , 삭제 카테고리 대분류 뒷부분의 네자리 값이 0000 인 항목 00010000 전자제품 00020000 의류 소분류 뒷자리가 0000 이 아닌 나머지 항목 00010001 TV 00010002 컴퓨터. 카테고리 관리.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Database 실습' - rolf


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
database

Database 실습

김기헌

[email protected]

http://csdblab.chonbuk.ac.kr/~khkim

slide2
내용
  • 쇼핑몰 프로그램으로 배우는 SQL
    • 카테고리 관리

Database Research Lab

slide3
카테고리 관리
  • 카테고리 관리
    • 카테고리 목록, 추가, 수정, 삭제
  • 카테고리
    • 대분류
      • 뒷부분의 네자리 값이 0000인 항목
      • 00010000 전자제품
      • 00020000 의류
    • 소분류
      • 뒷자리가 0000이 아닌 나머지 항목
      • 00010001 TV
      • 00010002 컴퓨터

Database Research Lab

slide4
카테고리 관리

전자제품

의류

도서

TV

컴퓨터도서

남방

컴퓨터

소설

속옷

MP3

바지

에어컨

Database Research Lab

slide5
자료 조회하기
  • SUBSTR 함수를 이용한 대분류 확인
    • SELECT CATEGORY_CODE, CATEGORY_NAMEFROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,5,4)=‘0000’;

Database Research Lab

slide6
자료 조회하기
  • 소분류를 검색하기 위해 검색 결과가 대분류 코드 값만 추출하여 앞의 네자리만 보여준다.
    • SELECT SUBSTR(CATEGORY_CODE,1,4) AS LARGE_CODE, CATEGORY_NAMEFROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,5,4)=‘0000’;

Database Research Lab

slide7
자료 조회하기
  • 카테고리 테이블에 등록된 모든 항목 가운데 대분류코드가 0001인 소분류를 구하는 예제
    • SELECT CATEGORY_CODE, CATEGORY_NAMEFROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,1,4)=‘0001’AND SUBSTR(CATEGORY_CODE,5,4)!=‘0000’;

Database Research Lab

slide8
자료 입력하기
  • SELECT와 INSERT가 분리된 대분류 만들기
    • SELECT TRIM(TO_CHAR(MAX(SUBSTR(CATEGORY_CODE,1,4))+1,’0000’)) AS MAX_CODEFROM CATEGORY;
    • INSERT INTO CATEGORY(CNUM,CATEGORY_CODE,CATEGORY_NAME)VALUES(CATEGORY_SEQ.NEXTVAL,’00040000’,’일반잡화’);

Database Research Lab

slide9
자료 입력하기
  • TRIM(TO_CHAR(MAX(SUBSTR(CATEOGRY_CODE,1,4))+1,’0000’))
    • SUBSTR(CATEOGRY_CODE,1,4)

Database Research Lab

slide10
자료 입력하기
  • TRIM(TO_CHAR(MAX(SUBSTR(CATEOGRY_CODE,1,4))+1,’0000’))
    • MAX(SUBSTR(CATEOGRY_CODE,1,4))
    • MAX(SUBSTR(CATEOGRY_CODE,1,4))+1
    • TO_CHAR(MAX(SUBSTR(CATEOGRY_CODE,1,4))+1,’0000’)
    • TRIM(TO_CHAR(MAX(SUBSTR(CATEOGRY_CODE,1,4))+1,’0000’))

Database Research Lab

slide11
자료 입력하기
  • INSERT 구분 내에 SELECT가 포함된 대분류 만들기
    • INSERT INTO CATEGORY(CNUM,CATEGORY_CODE,CATEGORY_NAME)VALUES(CATEGORY_SEQ.NEXTVAL,(SELECT TRIM(CONCAT(TO_CHAR(MAX(SUBSTR(CATEGORY_CODE,1,4))+1,’0000’),’0000’)) AS MAX_CODEFROM CATEGORY ),’일반잡화’);

Database Research Lab

slide12
자료 입력하기
  • SELECT TRIM(CONCAT(TO_CHAR(MAX(SUBSTR(CATEGORY_CODE,1,4))+1,’0000’),’0000’)) AS MAX_CODEFROM CATEGORY

Database Research Lab

slide13
자료 입력하기
  • SELECT와 INSERT가 분리된 소분류 만들기
    • SELECT TRIM(TO_CHAR(MAX(CATEGORY_CODE)+1,’00000000’))FROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,1,4)=‘0001’;
    • INSERT INTO CATEGORY(CNUM,CATEGORY_CODE,CATEGORY_NAME)VALUES(CATEGORY_SEQ.NEXTVAL,’0001’0005’,’전화기’)

Database Research Lab

slide14
자료 입력하기
  • INSERT 구분 내에 SELECT가 포함된 소분류 만들기
    • INSERT INTO CATEGORY(CNUM,CATEGORY_CODE, CATEGORY_NAME)VALUES(CATEGORY_SEQ.NEXTVAL,(SELECT TRIM(TO_CHAR(MAX(CATEGORY_CODE)+1,’00000000’))FROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,1,4)=‘0001’),‘전화기’);

Database Research Lab

slide15
자료 입력하기
  • SUBSTR(CATEGORY_CODE,1,4)=‘0001’
  • MAX(CATEGORY_CODE)
  • MAX(CATEGORY_CODE)+1
  • TO_CHAR(MAX(CATEGORY_CODE)+1,’00000000’)

Database Research Lab

slide16
자료 수정하기
  • 키 값을 이용한 카테고리 이름 수정하기
    • UPDATE CATEGORYSET CATEGORY_NAME =‘와이드 TV’WHERE CNUM=‘2’;
  • CATEGORY_CODE 값을 이용한 카테고리 이름 수정하기
    • UPDATE CATEGORYSET CATEGORY_NAME = ‘노트북’WHERE CATEGORY_CODE=‘00010002’;

Database Research Lab

slide17
자료 수정하기
  • 카테고리 코드 수정하기
    • UPDATE CATEGORYSET CATEGORY_CODE=‘00040001’WHERE CATEGORY_CODE=‘00020002’;
    • UPDATE PRODUCTSSET CATEGORY_FK=‘00040001’WHERE CATEGORY_FK=‘00020002’;
  • SELECT A.CATEGORY_CODE,B.CATEGORY_FK,A.CATEGORY_NAME,B.PRODUTS_NAMEFROM CATEOGRY A, PRODUCTS BWHERE A.CATEGORY_CODE=B.CATEGORY_FKAND A.CATEGORY_CODE=‘00040001’;

Database Research Lab

slide18
자료 삭제하기
  • DELETE 구문을 이용한 자료 삭제하기
    • DELETE FROM CATEGORYWHERE CATEGORY_CODE=‘00010001’;
    • DELETE FROM PRODUCTSWHERE CATEGORY_FK=‘00010001’;
    • DELETE FROM CATEGORYWHERE SUBSTR(CATEGORY_CODE,1,4)=‘0002’;
    • DELETE FROM PRODUCTSWHERE SUBSTR(CATEGORY_FK,1,4)=‘0002’;

Database Research Lab

slide19
자료 삭제하기
  • UPDATE 구문을 이용한 자료 삭제하기
    • DELETE_CHK 컬럼 이용
    • UPDATE CATEGORY SET DELETE_CHK=‘Y’WHERE CATEGORY_CODE=‘00010003’;
    • UPDATE CATEGORY SET DELETE_CHK=‘Y’WHERE SUBSTR(CATEGORY_CODE,1,4)=‘0003’;
    • SELECT * FROM CATEGORYWHERE DELETE_CHK=‘N’;

Database Research Lab

ad