데이터베이스 프로그래밍 시험공부중에..
/**컬럼 타입 : CHAR **/
create table chr_exam1( names1 char(3byte), names2 varchar2(3 byte));
chr_exam1 이라는 이름의 테이블을 생성합니다.
컬럼은 각 각 3byte char, 3byte varchar2로 생성합니다.
insert into chr_exam1 values('AA', 'AA');
각 컬럼에 'AA'를 넣습니다.
select
replace(names1, '', 'B') nm1,
replace(names2, '', 'B') nm2
FROM chr_exam1
각 컬럼을 replace함수를 통해 ''값을 B로 치환하여 조회합니다.
/**컬럼 타입 : NUMBER **/
create table num_temp1(
n1 number,
n2 number(9),
n3 number(9,2),
n4 number(9,1),
n5 number(7),
n6 number(7,-2),
n7 number(6),
n8 number(3,5));
다음과같이 테이블을 생성합니다.
insert into num_temp1(n1, n2, n3, n4, n5, n6)
values(1234567.89, 1234567.89, 1234567.89, 1234567.89, 1234567.89, 1234567.89);
다음과같이 값이 삽입됩니다.
1234567.89 1234568 1234567.89 1234567.9 1234568 1234600 null 0.00123
/**컬럼 타입 : 날짜형 **/
create table date_temp1(
date1 DATE);
insert into date_temp1 (date1) values(sysdate);
sysdate : 오라클의 날짜함수. 현재시간을 가져옴
select * from date_temp1
alter session set nls_date_format = 'yyyy-mm-dd';
/**컬럼 속성 : NULL **/
create table null_test(
null_col1 varchar2(20) not null,
null_col2 varchar2(20) null,
null_col3 varchar2(20));
insert into null_test( null_col1, null_col2) values('AA', 'BB');
insert into null_test( null_col2, null_col2) values('CC', 'DD');
insert into null_test( null_col1, null_col2, null_col3) values('TT', 'SS', null);
insert into null_test( null_col1, null_col2, null_col3) values('TT', 'SS', '');
/**컬럼 속성 : UNIQUE **/
create table unique_test(
uni_col1 varchar2(10) unique not null,
uni_col2 varchar2(10) unique,
uni_col3 varchar2(10) not null,
uni_col4 varchar2(10) not null,
CONSTRAINTS uni_tmp_uk UNIQUE (uni_col3, uni_col4));
insert into unique_test (uni_col1, uni_col2, uni_col3, uni_col4) values ( 'A1', 'B1', 'C1', 'D1');
insert into unique_test (uni_col1, uni_col2, uni_col3, uni_col4) values ( 'A2', 'B2', 'C2', 'D2');
update unique_test set uni_col1 = 'A1' where uni_col2 = 'B2' /*무결성제약조건위배*/
insert into unique_test(uni_col1, uni_col2, uni_col3, uni_col4)values('A3', '', 'C3', 'D3');
insert into unique_test(uni_col1, uni_col2, uni_col3, uni_col4)values('A4', '', 'C4', 'D4');
update unique_test set uni_col2 = '';
/** 참조 키(FK) **/
update employees set department_id = 280 where employee_id = 178; /*무결성 제약조건(FK,외래키) 위반 */
insert into employees ( employee_id, last_name, email, hire_date, job_id, department_id) values(990, 'TEST', 'TEST', sysdate, 'IT_PROG', 900); /*무결성 제약조건(FK,외래키) 위반 */
delete departments where department_id = 30; /*무결성 제약조건(FK,외래키) 위반 */
/** CHECK **/
create table check_test( gender varchar2(10) not null constraint check_gender check(gender in('남성','여성')));
insert into check_test values('무성'); /*체크제약조건 위배*/
/** DEFAULT **/
alter table check_test modify gender default '남성';
alter table check_test add insert_date DATE DEFAULT sysdate;
alter table check_test ADD test VARCHAR2(10) null;
insert into check_test (test) values('AA');
select * from check_test;
/** TABLE COPY **/
create table emp_copy1 AS select * from employees;
'Lecture > SqlDeveloper' 카테고리의 다른 글
[Oracle] sqldeveloper로 특수문자 입력 (3) | 2012.07.27 |
---|---|
SqlDeveloper 설치 (2) | 2012.04.25 |