전체 글

전체 글

    [ORACLE]ALTER

    [ORACLE]ALTER

    ALTER 테이블 수정 💡 테이블에 컬럼을 추가, 삭제, 변경할 때 사용 컬럼 추가 ALTER TABLE 테이블명 ADD ( 조건 ) CREATE TABLE emp_test( EMPNO NUMBER(4), ENAME VARCHAR2(10), deptno NUMBER(2)); ALTER TABLE emp_test ADD (hp VARCHAR2(11)); DESC emp_test; 컬럼 수정 ALTER TABLE 테이블명 MODIFY ( 조건 ) -- 데이터가 없을때 크기 및 타입 비교적 자유롭게 변경 가능 ALTER TABLE emp_test MODIFY (hp VARCHAR2(5)); ALTER TABLE emp_test MODIFY (hp NUMBER(5)); desc emp_test; -- 기본값 설..

    [ORACLE]DROP

    DROP 💡 DROP [객체종류] [객체타입]; ⚠️TABLE 삭제⚠️ 💡 테이블 객체를 삭제하는 query DROP TABLE [table이름]; DROP TABLE emp_copy; 관련된 객체(제약조건, 인덱스) 같이삭제 VIEW 삭제 💡 뷰 객체를 삭제하는 query DROP VIEW [view이름]; DROP VIEW v_emp; SEQUENCE 삭제 💡 시퀀스 객체를 삭제하는 query DROP SEQUENCE [view이름]; DROP SEQUENCE seq_emp; INDEX 삭제 💡 INDEX 객체를 삭제하는 query DROP INDEX [INDEX이름]; DROP INDEX idx_u_dept_test_01; SYNONYM 삭제 💡 SYNONYM 객체를 삭제하는 query DROP S..

    [ORACLE]CREATE

    [ORACLE]CREATE

    CREATE 테이블생성 💡 테이블을 만든다 CREATE TABLE [table name]( column1_name culumn1_type [제약조건], column2_name culumn2_type [제약조건], column3_name culumn3_type [DEFAULT expr] ); CREATE TABLE ranger ( ranger_no NUMBER, ranger_nm VARCHAR2(50), reg_dt DATE DEFAULT SYSDATE); INSERT INTO ranger(ranger_no, ranger_nm) VALUES (1,'brown'); CTAS (CREATE TABLE ... AS ..) 💡 서브쿼리의 데이터를 가지고 테이블을 만든다 CREATE TABLE tab..

    [ORACLE]제약조건

    [ORACLE]제약조건

    제약조건 (Constraints) 💡 잘못된 데이터가 들어가는 것을 방지하는 성격 사원 테이블에 중복된 사원번호가 등록되는 것을 방지 반드시 입력되어야 하는 컬럼의 값을 확인 ⭐오라클에서 데이터무결성을 지키기 위해 제공하는 제약조건 1. NOT NULL ( 5. CHECK 제약조건에 포함) 💡 해당 컬럼값에 NULL이 들어오는 것을 제약, 방지 NOT NULL CREATE TABLE dept_test( DEPTNO NUMBER(2), DNAME VARCHAR2(14) NOT NULL, LOC VARCHAR2(13) ); 2. UNIQUE 💡 전체 행중에 해당 컬럼의 값이 중복이 되면 안 된다. 단, NULL에 대한 중복은 허용한다 UNIQUE ex) emp테이블에서 empno 컬럼은 중복이 되면 안된다...

    [ORACLE]오라클 객체

    [ORACLE]오라클 객체

    ⭐TABLE 💡 데이터를 저장할 수 있는 공간 테이블 컬럼명 규칙 영문자로 시작해야 한다 길이는 1-30 글자 알파벳 대소문자, _ , $, # 만 사용가능 해당 유저가 소유한 다른 객체와 이름이 겹치면 안됨 오라클 키워드와 객체명이 동일할 수 없음 DDL은 자동커밋, 롤백이 불가 💡 DML과 DDL을 혼합해서 사용할 경우 **의도치 않게 COMMIT** 될 수 있다. ⭐VIEW 💡 논리적인 데의터 집합의 정의 (SQL) SQL이기 때문에 기준 테이블이 변경되면 연관되어 변경 된다. 조인된 결과나 그룹함수를 적용하여 행의 건수가 달라지는 SQL도 view로 생성 가능. ⭐SEQUENCE 💡 중복되지 않는 정수값을 반환해주는 오라클 객체 시작값(default 1, 혹은 개발자가 설정가능) 부터1씩 순차적으..

    [ORACLE]DELETE

    DELETE 💡 테이블에 행을 삭제한다. DELETE [FROM] TABLE [WHERE condition]; WHERE 절의 문법이 SELECT의 WHERE 절과 동일하다 DELETE emp WHERE empno=9999; -- 서브쿼리 등도 사용가능하다 DELETE emp WHERE empno IN (SELECT empno FROM emp WHERE mgr = 7698); ⚠️TRANCATE⚠️ 💡 개발환경에서 로그남김없이 테이블을 지울때 사용 TRUNCATE TABLE [table]; CREATE TABLE emp_copy AS SELECT * FROM emp; SELECT * FROM emp_copy; TRUNCATE TABLE emp_copy;

    [ORACLE]UPDATE

    [ORACLE]UPDATE

    UPDATE 💡 테이블에 존재하는 데이터를 수정하는 것 UPDATE [table] SET column1=value1 [, column2=value2 ..] [WHERE condition]; UPDATE dept SET dname = '대덕it', loc = 'daejeon' WHERE deptno = 90; ⚠️주의사항⚠️ WHERE절이 있는지 없는지 확인 → 없을경우 모든 데이터 업데이트 UPDATE하기전에 기술한 WHERE 절을 SELECT절에 적용해서 대상데이터를 눈으로 확인하고 실행 -- dept 테이블 모든 행을 아래 조건으로 업데이트 UPDATE dept SET dname = '대덕it', loc = 'daejeon'; --- SELECT * FROM dept WHERE deptno = 90;..

    [ORACLE]INSERT

    INSERT 💡 테이블에 데이터를 입력하는 SQL 문장 INSERT INTO [table] [(column1[, column2 ..]) ] VALUES(value1 [ ,value2]); 컬럼명을 나열할 떄 테이블 정의에 따른 컬럼순서대로 나열할 필요는 없고 values절에 기술한 값의 순서와 동일해야함 테이블의 모든 컬럼에 값을 입력하며 컬럼순서대로 나열한 경우 컬럼명 나열하지 않아도 된다. INSERT INTO dept (deptno, dname,loc) VALUES (99, 'DDIT','daejeon'); INSERT INTO dept ~~(deptno, dname,loc)~~ VALUES (99, 'DDIT','daejeon'); 모든 컬럼에 값을 입력하지 않을 수도 있다 단, 해당컬럼이 NOT..

    [JAVA] 다차원 배열

    배열안에 배열이 있는 형태이다 2차원 배열 int[ ][ ] array2 = new int[2][3]; 배열안에 배열이 들어있는 형태 int[][] arr2 ; // 2차원배열 int[][][] arr3; // 3차원배열 int arr4[][] = new int[][]{{1,2,3},{4,5,6}}; //2칸짜리 배열각칸에 3칸짜리배열넣기 int[] arr5[] = { {1,2,3}, {4,5,6}, {7,8,9}}; //초기화하며 선언 // 가변배열 int[][] arr6 = new int[3][]; // 일부의 크기만 지정 가능, arr6[0] = new int[3]; arr6[1] = new int[5]; arr6[2] = new int[10]; 2차원배열 접근 2차원 인덱스까지 접근해서 사용한다 ..

    [ORACLE]서브쿼리

    [ORACLE]서브쿼리

    SQL내부에서 사용된 sQL 사용위치에 따라 SELECT 절 : scalar subquery 반드시 서브쿼리가 하나의 행, 하나의 컬럼을 반환해야 한다 -- 하나의 행, 하나의 컬럼안에 여러개의 행, 컬럼 표현 불가 SELECT empnom, ename, ~~(SELECT deptno, deptname FROM dept)~~ FROM emp; FROM절 : in-line view WHERE절 : subquery 반환하는 행, 컬럼 수에 따라 단일행, 단일컬럼 ( = ) 단일행, 복수컬럼 다중행, 단일컬럼 ( IN , ANY, ALL ) IN 비교시에 NULL 주의 4. 다중행, 복수컬럼 복수컬럼에서 **pairwise , non-pairwise** ```sql -- 복수컬럼 쿼리 예제 SELECT * F..