키본 키 후보키 중 설계자에 의해 선택된 키로써, 데이터가 중복되지 않아 행(row)를 식별할 수 있으며 NULL 값을 가지지않는다. 테이블은 오직 하나의 기본키를 가질 수 있지만 기본키가 반드시 하나의 컬럼으로 이루어져야하는 것은 아니다. 즉, CONSTRAINT로 지정하는 기본키는 하나만 존재하지만, 기본키를 이루는 컬럼은 복수개일 수 있다. 테이블 생성시 PK 제약조건 추가 - 단일 컬럼 CREATE TABLE EMP ( EMP_NO NUMBER(4), EMP_NM VARCHAR2(10), DEPT_NO VARCHAR(2), CONSTRAINT PK_EMP PRIMARY KEY(EMP_NO) ); CREATE TABLE EMP ( EMP_NO NUMBER(4) PRIMARY KEY, EMP_NM V..
기존 생성된 테이블에서 ALTER TABLE 구문을 통해 컬럼을 추가하게되면 추가된 컬럼은 마지막순서에 위치해있다. 오라클 12c 이상부터는 INVISIBLE과 VISIBLE을 이용해 컬럼 순서를 변경할 수 있다. (그 이하 버전은 테이블삭제 후 재생성) INVISIBLE을 적용하면 컬럼이 보이지 않게되며, 다시 VISIBLE을 적용하면 없어졌던 컬럼이 마지막 순서로 나타나게된다. ALTER TABLE [테이블] MODIFY [컬럼] INVISIBLE/VISIBLE; ALTER TABLE EMP MODIFY DEPTNO INVISIBLE; ALTER TABLE EMP MODIFY DEPTNO VISIBLE; 컬럼을 어디로 이동시킬지에 따라 INVISLBIE/VISIBLE을 적용할 컬럼 숫자를 달리하면 된다.
ALTER 구문 테이블 설계 후 변경사항이 있을 때 ALTER 구문을 사용하는데, 드문드문 사용하다보니 자주 까먹는다. 이참에 사용법을 정리해보기로 했다. ADD : 열 추가 ALTER TABLE [테이블] ADD [컬럼명] [데이터타입] 형식으로 입력가능하며, 여러 행을 한 번에 추가할 수도 있다. 열을 추가했을 때 필요에 따라 컬럼 순서를 변경할 수도 있다. ALTER TABLE EMP ADD HP VARCHAR2(20); ALTER TABLE EMP ADD TEL VARCHAR2(20); ALTER TABLE EMP ADD (HP VARCHAR2(20), TEL VARCHAR2(20)); RENAME : 열 이름 변경 추가한열인 TEL 이름을 PHONE으로 변경한다. ALTER TABLE [테이블]..
CHAR 타입과 VARCHAR, VARCHAR2 비교 CHAR 타입은 최대길이 2000byte를 가지는 고정길이 문자열 데이터 타입이다. 항상 지정된 길이로 저장되기 때문에 CHAR(50)으로 지정된 컬럼이 있다면 10byte의 데이터가 들어오더라도 빈 공간을 공백으로 채워 50byte를 차지한다. VARCHAR2와 VARCHAR는 최대길이 4000byte를 가지는 가변길이 문자열 데이터 타입이다. VARCHAR2(50) 또는 VARCHAR(50)으로 지정된 컬럼에 10byte의 데이터가 주어지면, 데이터의 크기만큼인 10byte만이 저장된다. 물론 이러한 로직을 처리하는데 자원을 사용하기 때문에 CHAR 형식이 INSERT/UPDATE 구문 수행속도가 더 빠르다. 하지만 데이터가 가변길이로 저장되므로 ..
데이터셋에 조회된 쿼리 결과를 바로사용하지 않고 setColumn(), addRow()등의 함수를 통해 조회된 데이터를 한 번 더 가공한 뒤, 그리드에 렌더링해야할 때가 있다. 이럴 경우 데이터셋의 RowType은 INSERT 혹은 UPDATE 상태로 변경되는데, 데이터셋의 ①RowType을 임의로 변경하는 방법과 변경사항을 적용하면서도 ②변경내역이 없었던것 처럼 RowType을 유지하는 방법에 대해 알아본다. Dataset > updatecontrol updatecontrol이 디폴트 값인 true로 설정된 경우, 데이터셋 변경사항이 있을 경우(삽입/수정/삭제 등) 변경 종류에 따라 RowType이 자동으로 변경된다. updatecontrol을 false로 변경하면 RowType이 더 이상 변경되지 않..
작업 중 Project Explorer에 추가로 Service를 생성하거나, Service 순서를 변경해야할 때가 있다. 새로운 Service 생성 TypeDefinition을 더블클릭 하면 창이 뜨는데, Services 탭으로 이동해 Add 버튼으로 새로운 Service를 추가해줄 수 있다. Service 순서 변경하기 1. TypeDefinition 우클릭 후 Copy Full Path 클릭 2. 탐색기에 붙여넣기(파일 경로로 이동) > 메모장으로 열기 (메모장에 파일 드래그) 3. 나열되어있는 태그 순서를 직접변경 후 저장 > 프로젝트 Refresh
부트스트랩에서 사용할 수 있는 컴포넌트를 이용하다보면 정렬을 따로 해주어야할 때가 있다. css를 직접 작성할 수도 있지만, 부트스트랩에서 정렬을 적용해놓은 클래스를 이용할 수도 있다. 1. 부트스트랩 홈페이지에 접속한 뒤 Docs 탭으로 이동 Bootstrap The most popular HTML, CSS, and JS library in the world. getbootstrap.com 2. 검색창에 flex 검색 후 검색결과로 이동 3. 원하는 정렬이 구현된 div 태그를 복사해 가져온다. 원하는 정렬을 구현한 div 태그를 골라 태그 사이에 정렬할 코드를 넣어준다. ■ 정렬 전 ■ 정렬 후
리다이렉트(redirect) 리다이렉트란 컨트롤러에서 뷰를 분기하는 방법으로 사용자가 요청한 URL이 아닌 다른 URL을 넘겨주는 것이다. 예를 들어, 회원정보수정 페이지로 접근했을 때 로그인이 되어있지 않다면 사용자를 회원정보수정페이지가 아닌 로그인 페이지로 이동(리다이렉트)시켜야한다. Controller에 Redirect 구현 @RequestMapping(value = "/member/modifyForm") public String modifyForm(Model model, HttpServletRequest request) { HttpSession session = request.getSession(); Member member = (Member) session.getAttribute("member"..
- Total
- Today
- Yesterday
- 스프링
- CS
- 스프링부트
- 넥사크로
- Java
- Open API
- 환경설정
- JVM
- HeidiSQL
- 오라클
- CSS
- 부트스트랩
- 데이터베이스
- 프로그래머스
- C++
- 오류
- C
- 개발용어
- 백준
- 네트워크
- svn
- JSP
- Thymeleaf
- 인턴
- 이클립스
- 국비교육
- SQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |