Lang(73)
-
16. 정규화
1. 테이블 분할 정규화 데이터의 중복저장 방지 일관성이 깨지는 현상 해결 2. 제1정규화 반복되는 속성이나 그룹 속성 제거 기본테이블의 기본키를 추가해 새로운 테이블 생성 1:N 관계 형성 반복속성 제거, 기본키 추가해 새로운 테이블 생성 3. 제2정규화 복합키로 구성된 경우 모든 컬럼은 복합키 전체에 의존적이어야 한다 복합키 일부에 의존적인 컬럼은 제거해야 한다 복합키 일부에 의존적인 컬럼은 제거 4. 제3정규화 기본키에 의존하지 않고 일반컬럼에 의존하는 컬럼 제거 5. 역정규화 정규화된 테이블 정규화된 스키마는 가장 작은 단위로 테이블에 나뉘어져 있다 데이터 입력, 수정 시 관계를 맺는 테이블을 참조해야 한다 연관된 정보를 얻기 위해 조인을 수행 시스템의 부하 시스템 퍼포먼스 향상을 위해 정규화 위..
2023.03.28 -
ex. 기타
바인드 입력 select case (select count(*) from member where id=:id and passwd=:pwd) when 1 then '로그인 성공' else case (select count(*) from member where id=:id) when 1 then '비밀번호 불일치' else '해당 아이디가 존재하지 않음' end end 로그인 from dual; --:id, :pwd에 바인드된 값 각종 참조 시스템 뷰 USER_TABLES : 해당 사용자가 생성한 테이블 내역 USER_CONSTRAINTS USER_INDEXES USER_OBJECTS user_source : 저장프로시저, 함수 확인
2023.03.28 -
16. 에러처리
jsp에서의 에러 메시지 에러가 발생하면 어떤 경로로 발생했는지 스택을 뒤집어 추척, 에러메세지 표시 에러 발생시 에러메세지가 아닌, 다른 페이지를 보여주기 위해 에러처리 HTTP 에러코드표 상황에 따라 다른 코드 표시 404 : 사용자가 잘못된 페이지 요청시 발생 not found, 문서를 찾을 수 없음 500 : 프로그램 코딩 오류 시 internal server error, 서버 내주 오류 404, 500 오류 처리 프로젝트 폴더 내 webapp/WEB-INF 폴더에 web.xml 추가 web.xml에 기술 태그 안에 처리할 에러코드 페이지 기술 semiProject2 index.html index.htm index.jsp default.html default.htm default.jsp 404 /..
2023.03.28 -
16. 문자열 String
1. String 변경이 불가능한 문자열 상수 개념 String str = "java"; String str = new String("java"); 문자열을 더하거나 변경하면 새로운 String객체 생성 기존 객체는 버려지며 쓰레기가 된다. 같은 문자열은 하나의 String 인스턴스 공유 String str1 = "hi"; String str2 = "hi"; String str3 = "hello"; String str4 = new String("hi"); str1과 str2는 같은 인스턴스 공유 str4는 새로 객체를 생성했기 때문에, 인스턴스를 공유하지 않는다. //equals가 아닌 ==를 통해 주소값 public class StringTest { public static void main(Strin..
2023.03.28 -
15. 분석함수
데이터를 분석하는 함수 분석함수(파라미터1, 파라미터2~) over( ) 1. 순위함수 rank, dense_rank, row_number partition 절에 있는 각 행의 순위를 리턴 rank 동일한 결과값일 때는 순위가 같다 다음의 결과값은 동일한 결과값의 개수를 더하여 리턴 1등, 공동2등, 4등 dense_rank 동일한 결과값의 건수가 여러개여도 다음값은 1만 더한다 1등, 공동2등, 3등 row_number partition 내 분할되어 정렬된 row별로 순위를 1부터 순차 적용 데이터별 유일 순위를 뽑을때 사용 1등, 2등=3등,4등 select department_id, employee_id, first_name, hire_date, salary, rank() over(order by ..
2023.03.28 -
15. DBCP
1. DBCP를 이용한 커넥션 풀 자카르타 프로젝트의 DBCP api를 사용 관련 jar 파일 설치 톰캣설치폴더/lib 에 포함되어 있는 jar server.xml 수정 jsp페이지에서 커넥션 풀 사용 Connection con=null; /* JNDI(java Naming Directory Interface) - XML과 같은 외부 자원을 통해 객체의 레퍼런스를 얻어오는 기법 이미 올라온 객체를 이름을 통해 검색해서 찾아내는 것 lookup()이라는 메소드를 이용 */ try { Context ctx = new InitialContext(); Context envCtx = (Context)ctx.lookup("java:/comp/env"); DataSource ds = (DataSource)envCtx..
2023.03.28