본문 바로가기

Study

(220)
[oracle] 접속 >startup // 오라클 가동 >shutdown // 오라클의 중지 >shutdown abort // commit되지 않은 트랜잭션도 처리하지 않고 정지 >shutdown immediate // commit되지 않은 트랜잭션을 롤백하고 연결된 유저를 disconnect 후 종료 * listner도 같이 시작/중지된다. listner 시작/중지 $lsnrctl start // listner 시작 $lsnrctl stop // listner 중지 su - oracle // 사용자 이름 변경 sqlplus 연결할sys as sysdba // sys로 연결 그 후 conn 아이디/비밀번호 // Oracle 파일을 연결 하기 위한 파일 정의 // D:\oracle\product\10.2.0\db_1\NETWO..
[oracle] CASE-WHEN - 메트로 코드 값에 해당하는 값 3개까지만 추출 select ld.STATIONNM, case when ld.PRVSTATION = null then '[종점]' when trim(ld.prvstation) = '' then '[종점]' else ld.PRVSTATION end PRVSTATION, case when ld.NXTSTATION = null then '[종점]' when trim(ld.NXTSTATION) = '' then '[종점]' else ld.NXTSTATION end NXTSTATION, case when ld.PRVMETROCD = null then '9999' when trim(ld.PRVMETROCD) = '' then '9999' else ld.PRVMETROCD end P..
[oracle] PROCEDURE *commit이 된 것은 rollback 할 수 없다. 그래서 기존 테이블 외에 백업 테이블을 만들어 둔다. *procedure 만들기 pyong_info 의 평형별 금액을 기준으로 각호의 가격을 산정하는 프로시져 작성. 1. 층이 전체 층의 60%이상 85% 이하인 층들의 가격을 20%상승 2. 향이 남향이면 10%상승, 동향이면 5%상승, 북향 -5%, 서향 0% 상승. 3. 파라메터로 apt_code 를 입력받아 해당 아파트만 업데이트 될수 있도록... 4. apt_code 별로 업데이트 하지말고, dong_code 별로 업데이트. CREATE OR REPLACE PROCEDURE SCOTT.chap09 ( l_apt_code number ) IS v_max_floor number(11) defau..
[oracle] FUNCTION, TRIGGER(미완성), UPDATE, TRUNC, GROUP BY *function 만들기 - common table 에서 common name 을 return. schema Brower 에서 우클릭 -> create function 이용하면 됩니다.. Sample source -- start CREATE OR REPLACE FUNCTION SCOTT.get_name ( p_param varchar2) RETURN varchar2 IS v_return varchar2(100) default ''; BEGIN select to_char( sysdate, 'yyyymmdd' ) into v_return from dual; RETURN v_return; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; WHEN OTHERS THEN -- Consider..
[oracle] 비만도 계산 create, insert, update, case when *조건 1. 표준체중계산 (신장cm-100) X 0.9=표준체중, 표준체중에서 -5Kg~ +5Kg 는 정상입니다. 2. 비만도 측정방법 비만도(%) = 현재체중(kg) / 표준체중(kg) *90~110% = 정상 *110~120% = 과체중으로 분류합니다. *120~140% = 비만으로 분류합니다. *140% 이상 = 저체중입니다 create table weight_info ( height number(3, 0), c_weight number(3, 0), s_weight number(3, 0), bimando number(3, 0), bigo varchar2(10) ); insert into weight_info values (160, 50, 0, 0, ''); insert into weight_info..
[oracle] create, alter, update * pyong_info table 생성 후, ho_info 의 area 값에 해당하는 평을 생성하시오.. 중복은 당연히 제거하고, comm_area = 0 , area 값은 ho_info값, price 는 모두 0, ins_date 는 입력일자, pyong_info 데이터는 아마 24, 32 평 2개로 구성될듯.... pyong_code number(3) -- key pyong varchar2(100) -- 23(평) comm_area number(19,2) -- 10.4(m2) area number(19,2) -- 89.9(m2) pyong_price number(19,2) -- 평형별 금액 unit_price number(19,2) -- 평단가 ins_date date -- 입력일자 create ta..
[oracle] update * common table 생성 필드는 comm_gropp_code varchar2(10), comm_code varchar2(10), desc varchar2(100) create table common ( comm_group_code varchar2(10), comm_code varchar2(10), comm_desc varchar2(100) ); * ho_info에 필드 floor 를 추가하고.. 각 필드에 층의 값을 update 하시오.. alter table ho_info add (floor number(2)); update ho_info h set floor = (decode(MOD(h.ho_code,22), 0, 22 , MOD(h.ho_code,22))); * ho_info 에 direct..
[oracle] 필드 추가 및 수정, SUM, UPDATE * 필드 추가 및 수정은 alter table 이용..... * ho_info area 필드를 number(19,2) 로 타입을 바꾸고 값을 24로 update -데이터를 비우고, 필드타입을 수정한다. update ho_info set area=''; alter table ho_info modify area number(19, 2); update ho_info set area=24; * do_info area 필드를 추가하고 각 호의 면적을 sum 해서 update alter table dong_info add (area number(19, 2)); update dong_info d set area= ( select sum(area) from ho_info h where h.dong_code = d.do..