본문 바로가기

SQL24

[Servlet / JSP / SQL / Template / Session] 회원 관리 폼 만들기 (3) - 회원 등록 (DB에 데이터 저장) 이전까지 webapp / content에 있는 board_list.jsp 까지 보았다. 이곳에서 LOGIN을 누르면 Session값을 받아와 로그인 하기를 만들어 보려고 한다. header.jsp이다. 를 사용해 when, otherwise를 나누어주었다. when은 ~~일 때, otherwise는 그렇지 않을 때 이다. 즉, if 와 else if와 유사한 구문이라고 생각할 수 있다. when을 사용하여 session값을 불러온 값이 not empty 비어있지 않을 때 로그인이 되어야 하지만, 아직 회원가입조차 하지 않았으므로 joinForm.me를 눌러 회원가입부터 조져보자. MemberController.java (서블릿) join.jsp로 가라고한다. join.jsp HTML 삽입 미리보기할 수 .. 2023. 2. 27.
[Servlet / JSP / SQL / Template / Session] 회원 관리 폼 만들기 (1) - CREATE (DB 테이블 생성) 이번에는 Servlet / JSP / SQL / Template / Session을 모두 이용하여 게시판을 만들어 보려고한다. 패키지로 controller, service, sqlmap 그리고 webapp 하위 폴더로 view content, template, css 폴더를 만들어 확장성이 높은 게시판을 만들어보았다. 먼저 DB에 쿼리들을 작성해 회원테이블(Member), 게시판 테이블(Board), 댓글 정보 테이블(Reply) 을 생성해주었다. 회원 테이블 .SQL HTML 삽입 미리보기할 수 없는 소스 게시판 테이블.SQL HTML 삽입 미리보기할 수 없는 소스 댓글 정보 테이블.SQL HTML 삽입 미리보기할 수 없는 소스 이렇게 DB에 데이터를 저장시켜 놓고, 이클립스로 돌아와 DTO 클래스를 .. 2023. 2. 27.
[Oracle / SQL] 조인(JOIN) 여러가지 쿼리를 동시에 조회하는 것이다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 테이블에 별칭을 붙이는 방법 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 위 세개는 모두 같은 값을 조회한다. 테이블에서는 별칭을 붙일때 AS를 붙이면 에러가 뜬다. HTML 삽입 미리보기할 수 없는 소스 DEPTNO는 EMP와 DEPT 둘다 들어가있는데, 확실히 정해주지 않아서 오류가 뜬 것이다. 어떤 테이블에 있는 데이터를 조회할지 무조건 명확하게 명칭해주어야 한다. 예를들어 EMP.DEPTNO 라던가 DEPT.DEPTNO라고 해야한다. HTML 삽입 미리보기할 수 없는 소스 엄청 많이 나온다.. ORDER B.. 2023. 2. 27.
[Oracle / SQL] 단일행 함수(Single)와 다중행 함수(Mutible) 단일행 함수(SINGLE ROW FUNCTION) - 한개의 입력 한개의 출력 - SELECT, WHERE, ORDER BY, UPDATE의 SET 절에서 사용 가능 - 조회되는 컬럼 값이 같아야한다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 다중행 함수(Mutible ROW FUNCTION) - 일반적인 컬럼과 같이 조회가 불가하다. - 여러 행을 바탕으로 1개의 결과값을 도출 - 여러행이 결과로 나오는 열은 사용불가 HTML 삽입 미리보기할 수 없는 소스 위 쿼리는 실행안된다. 조회되는 컬럼 값이 같아야한다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 혹시라도 이런 쿼리로 숫자를 세려고한다면 절대 이렇게 하지말자. NULL 값은.. 2023. 2. 26.
[Oracle / SQL] 많이 쓰는 함수 NVL , NVL2 , DECODE , CASE NVL 함수 : NULL 값을 원하는 값으로 조회 NVL( 값 혹은 컬럼, 치환 값) NVL HTML 삽입 미리보기할 수 없는 소스 위에서 NVL은 COMM의 NULL 값을 0으로 바꿔주세요. 이다 HTML 삽입 미리보기할 수 없는 소스 위 쿼리는 자료형이 일치하지 않아서 실행안된다. COMM은 숫자형이니 문자열과 일치하지 않다. NVL2(값 혹은 컬럼, NULL이 아닐때 값, NULL일 때 치환 값) NVL2 HTML 삽입 미리보기할 수 없는 소스 NVL2을 말하자면, COMM이 널이 아니면 1000, 널이면 0이라는 말이다. HTML 삽입 미리보기할 수 없는 소스 NVL2는 자료형이 불일치하더라도 NVL과 다르게 조회가 가능하다. DECODE( ) 함수 -> 자바의 IF, ELSE IF, ELSE H.. 2023. 2. 26.
[Servlet / JSP / SQL] 회원 관리 폼 만들기 (3) - DELETE(회원 삭제) 이번엔 회원 삭제를 하기전에, 상세정보 보기를 먼저 만들어 볼 것이다. member_list.jsp HTML 삽입 미리보기할 수 없는 소스 27번째 줄에있는 태그를 이용해 이름을 클릭하면 상세정보 보기 페이지로 이동하게 만들 것이다. 등록한 이름의 memId가 MemberDTO에 저장한( ${member.memId} ) 아이디를 같이 들고간다. 어디로? member_detail.do MemberController.java 서블릿 member_list.jsp에서 memId 데이터를 보냈으니, getParameter를 사용하여 성공적으로 받아주었다. MemberDTO member 이후 문장은 다시 mapper로 가서 쿼리를 짜주고 돌아오자. member-mapper.xml 오라클 DB에 저장했던 BASIC_.. 2023. 2. 23.
[Oracle / SQL] SQL INSERT, UPDATE, DELETE 테이블에 저장된 데이터에 변화가 생기는 추가, 삭제, 수정등의 쿼리는 실행 후 수정 내용을 확정할지 취소할지 결정지어 줘야한다. 변경 확정 : COMMIT 변경 취소 : ROLLBACK 단, 한번 COMMIT한 데이터는 ROLLBACK이 불가능하다. 먼저 연습할 MEMBER 테이블을 생성해주자. HTML 삽입 미리보기할 수 없는 소스 INSERT (데이터 삽입) --INSERT INTO 테이블명 (컬럼명들....) VALUES (값들....); HTML 삽입 미리보기할 수 없는 소스 데이터를 삽입 후 COMMIT을 해준다. 이후 다시 한번 VALUES(2,'KIMJAVA', 20); 을 넣는데, ROLLBACK;을 진행하였다. ROLLBACK을 하지 않았다면 MEM_NUM의 값이 2가 가진 데이터도 출력.. 2023. 2. 23.
[Servlet / JSP / SQL] 회원 관리 폼 만들기 (2) - INSERT(회원 등록) 이전 포스팅에서 DB연동 후 결과 페이지를 만드는데 까지 해보았다. login_result.jsp result 값으로 받아온 member에 들어있는 id와 pw가 일치하지 않으면 자바스크립트를 이용해 '로그인 실패'를 띄우고, 그렇지 않다면 '로그인 성공'을 띄운다. loginForm.do로 갈 서블릿과 memberList.do로 갈 서블릿을 만들어주자. MemberController.java 서블릿 loginForm.do에서는 단순히 같은 페이지로만 돌아가게끔 구현하였고, memberList.do는 쿼리를 작성한 값을 가져와야한다. 따라서 젤 먼저 쿼리를 쓰러 mapper로 가자. member-mapper.xml select 쿼리는 반드시 resultMap을 가져온다는 것을 다시 한번 명심하자. 쿼리문.. 2023. 2. 22.
[Servlet / JSP / SQL] 회원 관리 폼 만들기 (1) - CREATE (DB 테이블 생성) 프로젝트 파일 코드 최종본 webapp 파일에 첫 시작 화면인 index.jsp를 시작으로 회원 가입, 로그인, 로그인 결과, 회원 리스트, 회원 상세정보, 회원 삭제, 회원 업데이트 기능을 만들었다. 데이터 베이스를 이용하여 CRUD 게시판을 만들어보는 과정이다. 나중에 보았을때에도 헷갈리지 않도록 지금 내가 생각하고 있는 내용을 최대한 자세히 적어볼 것이다. 시작전, 먼저 JavaResources 폴더의 src/main/java에서 controller, dto, service, sqlmap 패키지를 만들었고, 각각 알맞는 인터페이스와 클래스 생성, 그리고 xml파일을 가지고왔다. 처음 시작은 webapp 폴더에서 index.jsp 파일을 만들었다. index.jsp HTML 삽입 미리보기할 수 없는 .. 2023. 2. 22.
[Oracle / SQL] SQL 별칭(AS), 와일드카드, LIKE 연산자, '%' , '_' 먼저 예제 데이터를 불러왔다. HTML 삽입 미리보기할 수 없는 소스 위 데이터를 바탕으로 아래에서 SQL 쿼리를 공부해보았다. HTML 삽입 미리보기할 수 없는 소스 포함된 데이터를 조회하는 방법 - LIKE 연산자와 와일드 카드. - 와일드카드 - 1. '%' : 랜덤한 글자(글자수는 마음대로), '김%', '%이' - 2. '_' : 랜덤한 한 글자. '김_', '_박_' - '_김%' HTML 삽입 미리보기할 수 없는 소스 대소문자로 변경해주는 함수 - UPPER() : () 안에 들어간 컬럼의 값을 대문자로 조회 - LOWER() : () 안에 들어간 컬럼의 값을 소문자로 조회 - INITCAP() : () 안에 들어간 컬럼의 값을 앞글자만 대문자로 조회 HTML 삽입 미리보기할 수 없는 소스 .. 2023. 2. 16.
[Oracle / SQL] SQL SELECT, FROM, WHERE 기초 공부 혼자서 이것저것 하기 위해 예제 파일을 다운받았다. HTML 삽입 미리보기할 수 없는 소스 위와 같이 계정을 생성해주었다. Example HTML 삽입 미리보기할 수 없는 소스 예제파일은 위와 같이 쿼리가 짜여져있다. HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 -- 특정 조건을 만족하는 데이터를 조회하는 문법 -- 문법 -- SELECT 컬럼명들 FROM 테이블명 WHERE 조건; HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미.. 2023. 2. 16.
[Oracle] DBMS와 SQLD에 대해서 알아보자. DBMS (Database Management System) DBMS란? - 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합. 내가 공부해 볼 Oracle에 대해 알아보았다. 특징 - 가장 오래되었고 신뢰도도 높다. 뛰어난 기술력과 안정성을 가지고 있다. 대규모의 애플리케이션, 특히 은행 업계에서 쓰이며, 유료로 사용해야 한다. 장점1 - 서버/클라이언트의 환경을 제공, 장점2 -대용량의 데이터 관리를 지원 장점3 -동시 다중 접속 지원 장점4- 고성능 트랜잭션 처리지원 장점5 - 높은 가용성 제공 SQL(Structed Query Language) SQL이란? - 관계형 데이터베이스 관리시스템의 데이터를 관리하기 위해 설계된 프로그래밍 언어 SQL구문은 4가.. 2023. 2. 16.