- ✨무결성(Integrity)이란?
데이터에 결함이 없는 상태, 즉 데이터를 정확하고 일관되게 유지하는 것을 의미.- ✨무결성 제약조건(Integrity Constraint)이란?
데이터베이스의 정확성, 일관성을 보장하기 위해 저장, 삭제, 수정 등을 제약하기 위한 조건
➡ 데이터베이스에 저장된 데이터의 무결성을 보장하고 데이터베이스의 상태를 일관되게 유지 / 데이터의 신뢰도 보존
📌 DB
-- SELECT 컬럼명들 FROM 테이블명; -- 1. EMP테이블에서 모든 사원의 사번, 이름, 급여정보 조회 SELECT EMPNO, ENAME, SAL FROM emp; -- 모든 사원의 이름, 직급, 입사일, 부서번호 조회 SELECT ENAME, JOB, HIREDATE, EMPNO FROM emp; -- 모든 사원의 모든 정보를 조회 -- *(에스테리스크) : ALL SELECT * FROM emp; -- 조건을 통해 조회 -- 급여가 300 이상인 사원들의 사번, 사원명, 급여 조회 SELECT EMPNO, ENAME, SAL FROM emp WHERE SAL >=300; -- 직급이 대리인 사원들의 사원명, 직급, 급여 조회 SELECT ENAME, JOB, SAL FROM emp WHERE JOB='대리'; -- 직급이 과장이고 급여가 400 이상인 -- 사원들의 모든 정보 조회 -- 같지않다 : !=(!, =), <> SELECT * FROM emp WHERE JOB='과장' AND SAL >= 400; -- COMM 컬럼이 NULL인 사원의 모든 정보 조회 SELECT * FROM emp WHERE COMM IS NULL; -- (COMM이 NULL이 아닌 경우) WHERE COMM IS NOT NULL; -- 급여가 500 미만이거나 700 이상이면서 -- 직급은 차장이고 COMM은 NULL인 사원들의 사번, 사원명, 급여, 직급, 커미션 정보를 조회 SELECT EMPNO, ENAME, SAL, JOB, COMM FROM emp WHERE (SAL < 500 OR SAL >= 700) AND JOB='차장' AND COMM IS NULL;
📌 JAVA(CONTROLLER CLASS)
package com.green.Second.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; //@Controller : 해당 클래스 파일이 컨트롤러 역할을 하는 클래스임을 spring에게 인식 @Controller public class MemberController { //@GetMapping, @PostMapping //페이지 접속 정보 //소괄호 안의 글자와 localhost:8081 뒤의 글자가 일치하면 //해당 메소드를 실행 //@PosrMapping은 페이지 이동방법 중에 form 태그로 이동하면서 //form 태그의 method 속성값이 post일 때만 실행됨. //get방식 //1. form 태그의 method 속성값이 get일 때. //2. a 태그로 페이지가 이동될 때. //3. 주소창에 직접 url을 입력했을 때. @GetMapping("/") public String main(){ //리턴되는 문자열은 마지막에 실행되는 html 파일명 //html 파일은 반드시 templates 폴더 안에 존재 return "first"; //first.html 실행 } //@RequestParam 어노테이션으로 html에서 넘어오는 데이터를 전달받을 수 있다. //해당 어노테이션의 속성으로는 name, required, defaultValue가 있다. //name: html에서 넘어오는 데이터의 이름 //required: 넘어오는 데이터가 필수 데이터인지 설정 //required 속성을 적지 않으면 default 값은 true //defaultValue: 데이터가 넘어오지 않을 때 결정되는 기본값 //html로 데이터를 전달하기 위해서는 //메소드의 매개변수로 Model(interface)의 객체를 선언 @GetMapping("/second") public String second(@RequestParam(name = "addr", required = false) String address, @RequestParam(name = "age", required = false, defaultValue = "1") int age, Model model){ System.out.println("addr = " + address); System.out.println("age = " + age); //html로 데이터 전달하기 model.addAttribute("addr", address); model.addAttribute("age", age); model.addAttribute("name", "홍길동"); return "second"; } }
📌 HTML(1)
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title></title> </head> <body> first.html 파일입니다. <br> <a href="second?addr=울산&age=30">second.html로 이동</a> </body> </html>
📌 HTML(2)
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h3>second.html 파일입니다.</h3> <div th:text="${addr}"></div> <span th:text="${age}"></span><br> [[${name}]] </body> </html>
- 죽겠다