Data Base_Oracle
-
SQL 제약조건 Check & DefaultData Base_Oracle/SQL 2020. 1. 4. 16:14
Check 개발자가 정의하는 제약조건, 상황에 따라 다양한 제약조건 설정 가능 § 형식 [ SQL> ~~~ 제약조건이름 check(범위지정 or 문자열 지정)] check(age >= 20 and age alter table b_prtest add constraint b_prtest_ck_age check(age >= 20 and age insert into b_prtest values(3, '테스트', 123, '서울시 강남구'); 1행에 오류: ORA-02290: 체크 제약조건(TEST1.B_PRTEST_CK_AGE)이 위배되었습니다 ] ▶ [ SQL> insert into b_prtest values(3, '테스트', 23, '서울시 강남구'); 1 개의 행이 만들어졌습니다. ] Default 기본..
-
SQL 제약조건 Primary Key & UniqueData Base_Oracle/SQL 2020. 1. 4. 15:57
Primary Key_기본키 테이블의 행을 구분하는 키워드로 사용 Not null + Unique index key 자동으로 부여 반드시 데이터를 입력해야 하면서 값이 중복되면 안되는 필드에 적용 ※ index key : 책갈피와 유사한 역할, 검색속도를 향상시킴 ex) ID, 사원번호(empno), 주민등록번호, 이메일 등 # Primary Key 추가 예제 [ SQL> alter table b_prtest add constraint b_prtest_pk_id primary key(id); SQL> desc b_prtest ] 이름 널? 유형 ID NOT NULL NUMBER(5) IRUM VARCHAR2(30) # Primary Key 중복 오류 예제 ▷ b_prtest 테이블의 모든 데이터 삭제 [..
-
SQL 제약조건(Constraint) 종류 및 개요Data Base_Oracle/SQL 2020. 1. 4. 15:47
제약조건_Constraint 목적에 맞는 데이터만을 저장하기 위해 필요한 조건 효율성, 무결성 추구 제약조건 설명 primary key기본키 값이 중복되지 않으면서 반드시 입력돼야 하는 필드에 부여 unique 값이 없어도 되지만 중복되면 안 되는 필드에 부여 check 개발자가 설정하는 제약조건 숫자 : 범위 지정, 문자 : 특정한 값 등록 not null 반드시 값을 입력해야 하는 필드를 지정 default 필드의 기본값을 설정하는 제약조건 default를 제약조건에 포함시키지 않는 경우도 있음 foreign key외래키 테이블간의 관계를 설정할 때 사용하는 제약조건 § 제약조건 부여 형식 ◈ 테이블 생성시 제약조건 부여 [ SQL> create table table명(필드명1 자료형1 제약조건1, ..
-
SQL DDL_Drop, RenameData Base_Oracle/SQL 2020. 1. 4. 15:39
DDL _ Create, Alter, Drop Data Definition Language : 데이터 정의어 Table Create생성, Alter수정, Drop삭제 구문 DROP 테이블을 삭제하는 구문 § 형식 [ SQL> drop table table명; ] # 예제 [ SQL> drop table table1; 테이블이 삭제되었습니다. SQL> desc table1; ERROR: ORA-04043: table1 객체는 존재하지 않습니다. SQL> select * from tab; ] TNAME TABTYPE CLUSTERID BIN$~==$0 TABLE RENAME 테이블의 이름을 변경하는 구문 § 형식 [ SQL> rename 변경 전 table명 to 변경 후 table명 ] ※ Alter문으로..
-
SQL DDL_AlterData Base_Oracle/SQL 2020. 1. 4. 15:34
DDL _ Create, Alter, Drop Data Definition Language : 데이터 정의어 Table Create생성, Alter수정, Drop삭제 구문 Alter 테이블의 구조를 수정하는 구문 ADD_이미 생성된 테이블에 필드 추가 이미 데이터가 저장되어 있다면 제약을 받음 § 형식 [ SQL> alter table 수정table명 add (추가할 필드명 자료형 제약조건); ] ※ 제약조건 : 올바른 값만 입력 받을 수 있도록 하는 규칙 # 예제 ▶ [ SQL> alter table b_prtest add (tel varchar2(15) not null); 1행에 오류: ORA-01758: 테이블은 필수 열을 추가하기 위해 (NOT NULL) 비어 있어야 합니다. ] ※ 수정할 테이블..
-
SQL_DDL Create & 자료형 & 데이터 백업Data Base_Oracle/SQL 2020. 1. 4. 15:24
DDL _ Create, Alter, Drop Data Definition Language : 데이터 정의어 Table Create생성, Alter수정, Drop삭제 구문 Table 설계 필드 이름, 필드 자료형, 유효성 검사 규칙 등을 설정하는 것 table 구조 [ SQL> desc b_prtest ] 이름 널? 유형 ID NUMBER(5) NAME VARCHAR2(10) Create 테이블의 구조를 정의하는 구문 § 형식 [ SQL> create table table명(필드명1 자료형1 제약조건1, 필드명2 자료형2 제약조건2,,,,); ] ※ 필드명과 자료형은 꼭 지정해 주어야 테이블 생성이 허용됨 자료형 자료형 설명 char(size) 고정 길이 문자 데이터, 입력된 자료의 길이와 상관없이 정해..
-
SQL 그룹함수, Group by, Having 조건식Data Base_Oracle/SQL 2020. 1. 4. 15:14
그룹함수 여러개의 행에 대해 하나의 행으로 결과를 반환하는 함수, 통계에 관련된 함수 : 최대값, 최소값, 평균, 총레코드수, 합계 등 함수 설명 count() 해당 필드의 레코드 수를 반환하는 함수, 각 열마다 값이 있으면 1, 없으면 0을 반환 count( * ) : null을 포함한 필드의 레코드 수(열 수), 주로 사용됨 or count(필드명) : null을 포함하지 않음 min() 필드의 최소값을 반환하는 함수 max() 필드의 최대값을 반환하는 함수 avg() 필드의 평균을 반환하는 함수 sum() 필드의 합계를 반환하는 함수 .... 통계에 더욱 깊은 관련이 있는 함수들도 있음 분산, 표준편차 등 그룹함수 사용례 { count() } ▷ emp테이블에서 급여가 3000이상인 사원의 수 구하..
-
SQL 중첩함수, 동적 매개변수 활용Data Base_Oracle/SQL 2020. 1. 3. 00:10
중첩함수 함수내부에 또 다른 함수가 있는 경우 안쪽함수부터 실행 그룹함수에서 많이 사용됨 ▶ 사원 이름에 'O'가 몇 번째에 들어가는 지 조회 [ SQL> select ename,instr(ename, upper('o')) from emp; ] ENAME INSTR(ENAME, 'O') SMITH 0 JONES 2 SCOTT 3 동적 매개변수 활용 ▶ emp테이블에서 사원번호는 반드시 출력하고, 나머지 필드와 조건식은 동적으로 입력을 받아서 출력 [ SQL> select empno, &column_name from emp where &condition; column_name의 값을 입력하십시오: ename conition의 값을 입력하십시오: ename=upper('allen') ] EMPNO ENAME..