목표: 페이징 쿼리 이용 /* NoticeService.java */ package com.newlecture.app.service; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; import com.newlecture.app.entity.Notice; /* CRUD 서비스 목록을 반환하는 함수 */ publ..
목표 : 페이징을 위한 쿼리 만들기 Notice테이블 출력 SELECT * FROM NOTICE; 실행결과의 일련번호가 필요하다. 일렵번호를 ROWNUM을 사용해 출력 SELECT ROWNUM, NOTICE.* FROM NOTICE; 10줄만 출력을 위한 필터링 WHERE SELECT ROWNUM, NOTICE.* FROM NOTICE WHERE ROWNUM BETWEEN 1 AND 10; 2~10까지는 출력 불가. 이유 : rownum은 sql결과 셋에 순서를 부여하는 가상컬럼이다. fetch단계에서 추출하는 첫번째 row에 1을 부여하고, 이후 row가 추출될때마다 rownum의 값을 순차적으로 증가시킨다. 하지만 이 쿼리문에서는 rownum을 1-10까지 순서대로 증가시킬 경우라 출력이 가능하지만,..
목표 : SQL SELECT 쿼리 처리 순서를 파악한다. sqlbolt.com/lesson/select_queries_order_of_execution SQLBolt - Learn SQL - SQL Lesson 12: Order of execution of a Query Now that we have an idea of all the parts of a query, we can now talk about how they all fit together in the context of a complete query. Complete SELECT query SELECT DISTINCT column, AGG_FUNC(column_or_expression), … FROM mytable JOIN another_ta..
목표 : 공지사항 메뉴 붙이기 /*NoticeConsole.java*/ package com.newlecture.app.console; import java.sql.SQLException; import java.util.List; import java.util.Scanner; import com.newlecture.app.entity.Notice; import com.newlecture.app.service.NoticeService; public class NoticeConsole { private NoticeService service; public NoticeConsole() { service = new NoticeService(); } /* 내용 UI*/ public void printNoticeL..
목표 : 콘솔을 이용한 사용자 인터페이스 만들기 Notice를 관리하기 위한 console class 생성(UI) 동작을 위한 program5 Class생성 program5.java /* program5.java */ package ex1; import java.sql.SQLException; import com.newlecture.app.console.NoticeConsole; public class program5 { /* 탑다운 방식 구현 */ public static void main(String[] args) throws ClassNotFoundException, SQLException { NoticeConsole console = new NoticeConsole(); console.printN..
요청한 작업을 수행하는 중 오류 발생: IO 오류: The Network Adapter could not establish the connection (CONNECTION_ID=jHxZeyRjRwe0bH4CBvuaxg==) 업체 코드 17002 java에서 오류발생 로그인 시도실패로 보이기에 sql developer로 시도 오류발생 이유 : OravleXETNSListener 중지 해결방법 1. 서비스 확인 : 내컴퓨터 관리 -> 서비스 및 응용프로그램 -> 서비스 -> OracleOraDB18Home1TNSListener 중지: 사용으로 변경 -> 이후 문제 발생시 아래로 ↓ HOST값 일치 확인 listener.ora 파일 수정 위의 IP주소와 HOST의 주소를 동일하게 등록 tnsnames.ora ..
목표 : INSERT, UPDATE, DELETE 추가 NoticeService.java /* NoticeService.java */ package com.newlecture.app.service; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; import com.newlecture.app.entity.Not..
CRUD란? Create: 생성 Read: 읽기 Update: 수정 Delete: 삭제 목표 : SELECT 함수 구현 클래스 추가(서비스) Package: com.newlecture.app.service Name: NoticeService 클래스 추가(그릇을 정의) Package: com.newlecture.app.entity Name: Notice NoticeService.java /* NoticeService.java */ package com.newlecture.app.service; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.ResultSet; import java...