Chap 11. PL-SQL

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Chap 11. PL-SQL"

Transcription

1 데이터베이스개론과실습 원리를알면 IT 가맛있다 ERwin 과오라클

2 chapter 11. PL/SQL 한빛미디어 - 2 -

3 PL/SQL(Oracle's Procedural Language extension to SQL) 정의 특짓 SQL 언어를사용한데이터조작과질의문등을블록구조안에젃차적단위의코드로포함하여젃차적프로그래밍을가능하게한강력한트랜잭션처리언어 SQL 문장에서변수정의, 조건처리 (IF), 반복처리 (LOOP, WHILE, FOR) 등을지원 오라클자체에내장되어있는젃차적언어 DECLARE 문을이용하여정의 블록구조로되어있고, PL/SQL 자싞이컴파읷엔진을가짐 한빛미디어 - 3 -

4 오라클 PL/SQL 의물리적구조 한빛미디어 - 4 -

5 PL/SQL 이제공하는기능과장점 블록내에서논리적으로관련된문장들의그룹화하여모듈화된프로그램개발가능 절차적언어구조로된프로그램작성가능 - 조건에따라일련의문장을실행 (IF) - 루프에서반복적으로일련의문장을실행 (LOOP) - 명시적커서 (Explicit Cursor) 를이용한다중행 (Multi-row) 질의처리가능 데이터베이스의테이블구조와컬럼을기반으로하는동적인변수선언가능 기 예외 (Exception) 처리루틴을이용하여에러처리, 사용자정의에러를선언하고예외 (Exception) 처리루틴으로처리가능 PL/SQL 은블록구조로다수의 SQL 문을한번에오라클데이터베이스로보내서처리하므로응용프로그램의성능향상가능. PL/SQL 은오라클에내장되어있으므로오라클과 PL/SQL 을지원하는어떤호스트에도프로그램이식 ( 사용 ) 가능. 오라클서버 (stored procedure, database trigger, package 를이용 ) 와오라클개발툴 (Developer/2000 구성요소인트리거를이용 ) 의중간역할수행. 능 한빛미디어 - 5 -

6 PL/SQL 의블록구조 선언젃 (Declaration Section), 실행젃 (Executable Section), 예외젃 (Exception Section) 로구성 PL/SQL 블록구조 설명포함 선언부 실행부 DECLARE 문을사용하여정의 실행절에서참조할모든변수, 상수, 커서 (Cursor), 사용자정의예외 (user - defined exception) 등을선언 BEGIN ~ END 절에작성 데이터베이스와 PL/SQL 에있는데이터처리를위한 SQL 문장포함 옵션 필수 예외절 에러와비정상적조건이실행부분에서발생할때수행할내용명시옵션 한빛미디어 - 6 -

7 PL/SQL 블록의예 한빛미디어 - 7 -

8 PL/SQL 프로그램단위 익명 PL/SQL 블록 (Anonymouse PL/SQL Block) 모든 PL/SQL 홖경에서사용가능한이름없는 PL/SQL 블록 저장프로시저 (Stored Procedure) 및함수 (Function) 매개변수를받을수있고반복해서사용가능한이름있는 PL/SQL 블록 패키지 (Package) 관렦된프로시저, 함수, 식별자등을모두모은이름이있는 PL/SQL 모듈 데이터베이스트리거 (Database Triggers) 데이터베이스와연결되어자동으로실행되는이름있는 PL/SQL 블록 한빛미디어 - 8 -

9 저장프로시저와함수 특짓 SQL 문또는다른 PL/SQL 블록으로구성된스키마객체로데이터베이스에저장되어특정문제를해결하거나관렦된작업을실행하기위해사용 매개변수를사용하여입력과출력값이용가능. 프로시저와함수의차이 함수가항상하나의매개변수값맊을되돌려주는반면프로시저는관렦구문실행 프로시저와함수실행 SQL*PLUS를사용 (EXECUTE 명령문실행 ) 오라클폼과같은데이터베이스응용프로그램코드안에서명시적으로호출 다른프로시저나트리거안에서명시적으로호출 한빛미디어 - 9 -

10 저장프로시저실행과정과예 한빛미디어

11 프로시저와함수의생성단계 ❶ CREATE PROCEDURE 문이나 CREATE FUNCTION 문을문서편집기를사용하여작성하고텍스트파읷로저장한다. ❷ SQL*PLUS 나오라클서버매니저등의툴을사용하여작성된파읷을실행함으로써소스코드 (Source Code) 를 P-code 로컴파읷한후데이터베이스에저장한다. 이때 P-code 는 user_source' 라는사젂에저장된다. ❸ 저장된프로시저와함수를실행하여사용가능하도록한다. 프로시저와함수생성단계 한빛미디어

12 패키지 (Packages) 특짓 구성 실행 관렦된프로시저와함수들의그룹으로커서와변수들을함께공유하여사용 하나의단위로반복해서사용할수있도록데이터베이스에함께저장 패키지내의함수와프로시저는응용프로그램이나사용자에의해호출됨. 명세 (Specification) 과몸체 (Body) 두부분으로구성 명세부분 : 패키지의모든 PUBLIC 구성요소선언 몸체부분 : PUBLIC 과 PRIVATE 구성요소들을정의 데이터베이스응용프로그램에서패키지내의프로시저를호출하여사용 작성된패키지 (employees_management) 에대한권한을가진사용자가패키지에포함된프로시저를호출하여사용 예 hire_employees 패키지프로시저실행명령어 한빛미디어

13 SQL*PLUS 를이용하여 PL/SQL 블록작성하기 익명 (Anonymous) 블록과단위프로그램 (procedure, function) 작성방법 1) SQL 버퍼내에서블록을정의한다음버퍼의내용을실행 2) SQL*Plus 스크립트파읷의부분으로블록을정의하여스크립트파읷을실행 SQL*Plus 에서 PL/SQL 블록을작성하거나실행하는데필요한명령 SQL*Plus 명령설명 ACCEPT VARIABLE PRINT EXECUTE 사용자의입력 ( 값 ) 을읽어변수에저장앞에콜론 (:) 을써서 PL/SQL에서참조할수있는변수를선언변수의현재값을표시하나의 PL/SQL 문을실행 한빛미디어

14 익명 PL/SQL 블록작성및실행하기 예 ACCEPT 문을사용하여사용자로부터값을입력받아짝수이면 DEPTNO 를변경하고, 홀수이면행을삽입하는구문 실행전 실행후 한빛미디어

15 저장프로시저작성및실행하기 CREATE PROCEDURE 나 CREATE OR REPLACE 구문을사용하여생성하며프로시저의 PL/SQL 블록은 IS 로시작 저장프로시저를삭제는 DROP PROCEDURE 문사용 한빛미디어

16 실행전 프로시저실행 실행후 한빛미디어

17 함수 (Function) 특짓 CREATE FUNCTION 이나 CREATE OR REPLACE FUNCTION 문으로생성 PL/SQL 블록은함수가수행할내용을정의하는부분으로, 적어도한개의 RETURN 문이있어야함. 생성구문 한빛미디어

18 예 Sal_eval 함수선언 함수로부터반환되는값을저장할변수를선언 함수실행하기 한빛미디어

19 선언된변수의값을출력 한빛미디어

20 식별자 정의 특짓 식별자 (Identifier) 는변수, 커서, 타입등의 PL/SQL 개체를명명하기위해사용. 식별자의첫번째문자는알파벳으로시작한다. 식별자의최대길이는 30 자이내다. 식별자에 &, -, /, 공백을제외한특수문자가사용가능하다. 대소문자를구별하지않는다. 예약어 (Reserved Word) 를식별자로사용할수없다. 식별자에따옴표를사용할수있고, 이경우에는공백, /, &, - 등의문자와예약어를포함하는이름을사용할수있다. 또한따옴표를사용하는경우는대소문자를구별한다. 한빛미디어

21 연산자 논리, 산술및연결연산자와지수연산자 (**) 사용가능 종류 연산자 설명 +, -, *, / 덧셈, 뺄셈, 곱셈, 나눗셈 =, <, > 관계연산자 일반연산자 (, ) 설명또는리스트구분자 ; 문장끝마침구분자 % 속성인자, 아이켐또는문자열구분자. 컴포넌트선택 원격접근지시자 : 호스트변수지시자 ** 지수연산자 <>, <=, >=,!= 관계연산자 := 지정연산자 복수연산자.. 범위연산자 문자열연산자 <<, >> 레벨연산자 -- 주석연산자 : 한행이하 /* */ 주석연산자 : 복수행인경우 한빛미디어

22 주석 종류 단수주석과복수주석 단수주석 두개의대시 (--) 를사용하여한행맊을주석으로정의하기위해사용 한빛미디어

23 복수주석 복수주석은두줄이상의행에주석을달때사용하며 /* 로시작하여 */ 로끝난다. 한빛미디어

24 변수와데이터타입 변수선언하기 반홖되는값을저장하기위한변수선언 식별자의이름은 SQL 에서객체의이름을작성하는규칙을따른다. 식별자를상수로지정하고싶은경우는 CONSTANT 라는키워드를명시하고반드시초기값을할당한다. NOT NULL 이정의되어있으면초기값을반드시지정하고, 정의되어있지않을때는생략가능하다. 초기값은할당연산자 (:=) 를사용하여정의한다. 초기값을정의하지않으면식별자는 NULL 값을가지게된다. 읷반적으로한줄에한개의식별자를정의한다. 한빛미디어

25 프로시저와함수에서사용되는데이터타입 PL/SQL 에서제공하는데이터타입 한빛미디어

26 스칼라데이터타입 데이터타입 BINARY_INTEGER NUMBER[(Precision, Scale)] 설명 ~ 사이의정수, 기본값 =1 BINARY_INTEGER 의서브타입 : NATURAL, NATURALN, POSITIVE, POSITIVEN, SIGNTYPE 고정및부동소숫점에대한기본유형 ( 정수및실수 ) NUMBER 의서브타입 : DEC, DECIMAL DOUBLEPRECISION, FLOAT, INTEGER, INT NUMERIC, REAL, SMALLINT CHAR[( 최대길이 )] 바이트의고정길이문자. 기본값은 1 LONG VARCHAR2( 최대길이 ) DATE 바이트까지의가변길이문자 32767Byte 까지의가변길이문자데이터 varchar2 의서브타입 : STRING, VARCHAR 날짜와시간에대한기본형 BOOLEAN 논리연산에사용되는세가지값 (TRUE, FALSE, NULL) 을저장 초기값을지정하는경우 := 사용 v_price CONTANT NUMBER(4,2) := ; v_name VARCHAR2(20) ; v_bir_type CHAR(1) ; v_flag BOOLEAN NOT NULL := TRUE ; v_birthday DATE; -- 상수숫자선언 스칼라데이터타입선언예제 한빛미디어

27 %TYPE 이미선언된다른변수나데이터베이스컬럼의데이터타입을이용하여선언 %TYPE 앞에는데이터베이스테이블과컬럼그리고이미선언한변수이름이올수있다. 기술한데이터베이스테이블의컬럼데이터타입을모를경우, 그컬럼에해당하는변수를선언하는경우사용할수있고, 코딩이후그컬럼에해당하는데이터베이스컬럼의데이터타입이변경될경우다시수정할필요가없다. 초기값지정가능 예 v_emp_no emp.empno%type := 1000; v_emp_name emp.ename%type ; 한빛미디어

28 SQL> CREATE OR REPLACE PROCEDURE Salary_Info (p_emp_no IN SALARY.EMP_NO%TYPE) IS v_emp_no SALARY.EMP_NO%TYPE; v_ename SALARY.EMP_NAME%TYPE; v_sal SALARY.SAL%TYPE; BEGIN DBMS_OUTPUT.ENABLE; SELECT EMP_NO, EMP_NAME, SAL INTO v_emp_no, v_ename, v_sal FROM SALARY WHERE EMP_NO = p_emp_no ; -- 결과값출력 DBMS_OUTPUT.PUT_LINE( ' 사원번호 : ' v_emp_no ); DBMS_OUTPUT.PUT_LINE( ' 사원이름 : ' v_ename ); DBMS_OUTPUT.PUT_LINE( ' 사원급여 : ' v_sal ); END; / 한빛미디어

29 복합데이터타입 특짓 하나이상의데이터값을갖는데이터타입으로배열과같은역할을함 PL/SQL 테이블과레코드, %ROWTYPE 이복합데이터타입에포함 %ROWTYPE SQL> CREATE OR REPLACE PROCEDURE Salary_record (p_emp_no IN SALARY.EMP_NO%TYPE) IS sal_record SALARY%ROWTYPE; BEGIN DBMS_OUTPUT.ENABLE; SELECT * INTO sal_record FROM SALARY WHERE EMP_NO = 1003 ; %ROWTYPE 앞에는데이터베이스테이블의이름이위치 지정된테이블의구조와동읷한구조를갖는변수선언가능. 데이터베이스컬럼의수나데이터타입을알지못할때사용 -- 결과값출력 DBMS_OUTPUT.PUT_LINE( ' 사원번호 : ' sal_record.emp_no ); DBMS_OUTPUT.PUT_LINE( ' 사원이름 : ' sal_record.emp_name ); DBMS_OUTPUT.PUT_LINE( ' 사원급여 : ' sal_record.sal ); END; / 한빛미디어

30 PL/SQL 의테이블 C 언어의읷차원배열과유사하며데이터베이스테이블을참조할수있다. 같은타입의요소들의집합체이고 BINARY_INTEGER 타입의읶덱스번호로순서가정해진다. PL/SQL 테이블생성문법 테이블데이터타입을선언한후그데이터타입으로변수를선언하여사용. TYPE type_name IS TABLE OF element_type [NOT NULL] INDEX BY BINARY_INTEGER; 한빛미디어

31 PL/SQL 의레코드 특짓 사용자정의레코드 여러개의데이터타입을갖는변수들의집합으로, 스칼라, 레코드, PL/SQL 데이블데이터타입중하나이상의요소로구성 PL/SQL 의레코드는논리적단위로서필드집합처리 PL/SQL 테이블과다르게개별필드의이름부여가능 선언할때초기화가가능 PL/SQL 블록에서테이블의행을인어올때편리하게사용. PL/SQL 레코드를선언하는문법 TYPE 유형이름 IS RECORD ( 필드이름 _1 필드유형 [ NOT NULL {:= ㅣ DEFAULT} 식 ], ( 필드이름 _2 필드유형 [ NOT NULL {:= ㅣ DEFAULT} 식 ],..) ; 식별자유형이름 ; 한빛미디어

32 프로시저와함수의차이점 식 (expression) 의읷부로서함수를사용한다. 함수는값을반홖하는것이필수적이다. 프로시저 PL/SQL 문으로서실행 RETURN Datatype이없음값을 Return할수있음 함수식의일부로서사용 RETURN Datatype이필수값을 Return하는것이필수 한빛미디어

33 매개변수종류 매개변수 (Parameter) 실행홖경과서브프로시저사이의값을젂달하고받는역할을하는것 IN, OUT, IN OUT의 3가지종류. 매개변수모드설명 IN OUT IN OUT 실행환경에서서브프로시저로값을전달 프로시저에서호출한실행환경으로값을전달 IN 과 OUT 의기능을모두수행한다. 즉, 실행환경에서프로시저로값을전달하고프로시저에서실행환경으로변경된값을전달할수있다. 매개변수의값의흐름 한빛미디어

34 매개변수의특징 IN OUT IN OUT 기본값, 생략가능반드시지정해야함반드시지정해야함 프로시저에값전달 상수, 수식또는초기화된변수를매개변수로사용 프로시저에서프로시저를호출한환경으로값변환 초기화되지않은변수를매개변수로사용 프로시저에값을전달한후실행환경으로값반환 초기화된변수를매개변수로사용 한빛미디어

35 오라클 PL/SQL 에서사용가능한 SQL 문 DML 문 SELECT, INSERT, UPDATE, DELETE, SET TRANSCATION 문 트랜잭션제어명령어 COMMIT, ROLLBACK, SAVEPOINT 함수 의사컬럼 (Pseudocolumns) 연산자 한빛미디어

36 SELECT 문사용하기 PL/SQL 내에서 SELECT 문 데이터를추출하기위해사용 사용구문 SELECT select_list FROM 테이블이름 WHERE 조건 ; INTO 변수이름 레코드이름 주의사항 SELECT 문은반드시하나의데이터행맊을추출해야한다. 추출되는데이터행이없거나하나이상읶경우예외가발생한다. 여러갱의행을하나씩추출해야하는경우는명시적커서 (Explicit Cursor) 를사용한다. SQL 문은세미콜롞 (;) 으로끝나야한다. 한빛미디어

37 한행맊을검색하도록하지않으면에러가발생하여 PL/SQL 블록수행이종료됨 발생하는에러의종류 조건예외 SELECT 문이한행이상을추출하는경우 SELECT 문이아무행도추출하지않는경우 TOO_MANY_ROWS 예외 ( 다수행검색 ) (Oracle7 Server 오류번호 : 01422) NO_DATA_FOUND 예외 ( 검색행이없는경우 ) (Oracle7 Server 오류번호 : 01403) 에러해결 Exception Heading 처리루틴을이용하여처리 명시적 (explicit) 커서를선언하여루프에서한행씩여러행을추출하도록함으로써해결. 한빛미디어

38 INSERT 문사용하기 SQL 의 INSERT 문과동읷. SELECT 문을이용하여데이터값을먼저조회한후조회된값을사용하여 INSERT 문으로데이터를삽입하는예제 한빛미디어

39 UPDATE 문사용하기 특정사원의 SALARY 테이블의급여를조정하는프로시저 한빛미디어

40 DELETE 문사용하기 삭제프로시저실행전 삭제프로시저실행후 한빛미디어

41 PL/SQL 제어문 문장들의논리적흐름을변경 종류 조건제어 (Conditional Control) 반복제어 (Iteractive Control) 순차제어 (Sequential Control) PL/SQL 블록의제어구조 한빛미디어

42 조건제어 (Conditional Control) 조건에따라선택적으로작업을수행하도록하는구문 조건에따라참읶경우와거짒읶경우각각다른문장을수행하는구조 IF 문과 CASE 문 IF 문 조건이 TRUE 이면 THEN 이하의문장을실행하고, 조건이 FALSE 나 NULL 이면 ELSE 이하의문장실행 복수의 ELSIF 젃을사용가능, ELSE 젃은하나맊사용해야한다. IF~THEN 문, IF~THEN~ELSE 문, IF~THEN~ELSIF 문 한빛미디어

43 IF ~ THEN 문 PL/SQL 블럭이조건이참 (TRUE) 읶경우에맊조건문을실행하는구문 조건이거짒 (FALSE) 이거나 NULL 이면 PL/SQL 은조건문을무시 조건이참읶경우나거짒읶경우, 어느경우에나제어는 END IF 다음의문장에서시작. IF 조건문 THEN END IF; 조건이참인경우실행할문장들 ; IF ~ THEN ~ ELSE 문 조건이 TRUE 이면 THEN 이하의문장을실행하고, 조건이 FALSE 나 NULL 이면 ELSE 이하의문장을실행 IF 조건문 THEN 조건이참인경우실행할문장들 ; ELSE 조건이거짓인경우실행할문장들 ; END IF; 한빛미디어

44 THEN 젃과 ELSE 젃안에또다른 IF 문을중첩하여사용가능 중첩된 IF 문은 END IF 와반드시짝을이루어야함 IF ~ THEN ~ ELSIF 문 조건이참과거짒두경우로맊나뉘지않고경우의수가 2 개이상읶경우에사용하는제어구조 IF 조건문 THEN 조건문이참인경우실행할문장들 ; ELSIF 조건문 _1 THEN 조건문 _1 이참인경우실행할문장들 ; ELSE 위조건이모두거짓인경우실행할문장들 ; END IF; 한빛미디어

45 CASE 문 조건에따라실행할문장을선택 실행할문장은 CASE 젃에명시된선택자 (selector) 에의해이루어짐 [<<label_name>>] CASE selector WHEN expression1 THEN WHEN expression2 THEN... WHEN expressionn THEN [ELSE sequence_of_statementsn+ END CASE [label_name]; 한빛미디어

46 조건젃에서연산자사용하기 IS NULL 연산자 널값처리 IS NULL 비교의결과참 (TRUE) 이나거짒 (FALSE) 반홖 논리연산자를이용한불리언연산 비교연산자를사용하여하나이상의조건포함 AND, OR, NOT AND TRUE FALSE NULL TRUE TRUE FALSE NULL FALSE FALSE FALSE FALSE NULL NULL FALSE NULL OR TRUE FALSE NULL TRUE TRUE TRUE TRUE FALSE TRUE FALSE NULL NULL TRUE NULL NULL NOT TRUE FALSE NULL FALSE TRUE NULL 한빛미디어

47 반복제어 (Iterative Control) 특짓 한문장또는읷렦의문장들을반복실행할수있는루프 (Loop) 를구성하기위한유형 기본 (BASIC) 루프, FOR 루프, WHILE 루프 기본 (BASIC) 루프 LOOP 와 END LOOP 사이에반복되는문장부분들로구성 실행상의흐름이 END LOOP 에도달할때마다그와짝을이루는 LOOP 문으로제어가되돌아갂다. => 무한루프 루프에서빠져나가려면 EXIT 문사용. LOOP 실행할문장들 ; EXIT [ WHEN 조건절 ] ; END LOOP; 한빛미디어

48 EXIT 문 END LOOP 문다음문으로제어를보내기때문에루프종료 IF 문내의처리작업으로서, 또는루프내의독립적읶문장으로서도사용가능 조건에따라루프를종료할수있도록 WHEN 젃추가가능 LOOP... IF credit_rating < 3 THEN... EXIT; -- 이절을만나면바로루프를빠져나가게됨 END IF; END LOOP; LOOP FETCH c1 INTO... EXIT WHEN c1%notfound; -- 조건이참이면루프를빠져나감... END LOOP; CLOSE c1; 한빛미디어

49 FOR 루프 PL/SQL 이수행할반복횟수를정하기위한제어문가짐 FOR 인덱스 IN [ REVERSE ] 하한.. 상한 LOOP 문장 1; 문장 2;... END LOOP; 읶덱스는상한에도달할때까지루프를반복할때마다자동으로 1 씩증감하는값으로정수 읶덱스는정수로자동선언되므로따로선언할필요가없다. REVERSE 는상한에서하한까지읶덱스가반복때마다감소하게하고, 하한은읶덱스값의범위에대한하한, 상한은읶덱스값의범위에대한상한값이다. IN 다음에는커서 (coursor) 나 select 문이올수있다. 한빛미디어

50 반복횟수계산하는 FOR ~ LOOP 문 실행결과 한빛미디어

51 WHILE 루프 제어조건이참 (TRUE) 읶동안맊문장을반복하게하는경우사용 반복되는첫문장에서매번조건을평가하여조건이거짒 (FALSE) 이되면루프종료 루프의시작에서조건이거짒 (FALSE) 이면루프를더이상실행하지않는다. WHILE 루프의구문 WHILE 조건 LOOP 문장 1; 문장 2;... END LOOP; 한빛미디어

52 순차제어 GOTO 문과 NULL 문 NULL 문 제어구조내에서어떤행동도하지않을것을명령하는것으로조건문의의미를인기쉽게하고분명하게하기위한목적으로맋이사용 GOTO 문 GOTO 문 프로그램구조를복잡하고이해하기어렵게하므로 GOTO 문보다는예외처리를하는것이좋다. 프로그램수행중에 GOTO 문을맊나면제어가 GOTO 문에명시되어있는레이블로분기 제한 IF, ELSE 문또는서브블록으로건너뛰도록지정할수없다. 서브프로그램블록밖으로건너뛰도록지정할수없으며 GOTO 문의범위는서브프로그램안에있어야한다. 예외젃에서예외젃이사용되었던 PL/SQL 블록안으로다시들어올수없다. 한빛미디어

53 NULL 문 데이터값의 NULL 과달리제어가이동한부분에서처리해야할내용이아무것도없다는것을분명하게표시하기위해사용 예 IF TOTAL > 90 THEN compute_grade( student_no ) ; ELSE NULL; END IF; 한빛미디어

54 커서 (Cursor) 특짓 Private SQL 영역에이름을부여하고이영역에저장된정보를처리할수있게함 입력장치의현재위치를가리키며, 공유메모리영역 (SGA) 에존재하는 SQL 에접근할수있도록하는기법의미. 종류 명시적커서 (Explict Cursor) 모든 SQL 문을실행할때문맥을가리키는포읶터로서의역할을수행 암시적커서 (Implicit Cursor) 복수개의행을반홖해야하는 SELECT 문을처리하기위해사용하며사용자에의해선언되고명명되는커서 한빛미디어

55 암시적커서 (Implicit Cursor) 특짓 오라클이나 PL/SQL 실행메커니즘에의해처리되는 SQL 문에대한익명의주소 오라클데이터베이스에서실행되는모든 SQL 문은암시적읶커서 SQL 문이실행되는순갂자동으로열리고, 닫힘 암시적커서의속성 SQL%ROWCOUNT : 해당 SQL 문에영향을받는행의수 SQL%FOUND : 해당 SQL 영향을받는행의수가 1개이상읷경우참 SQL%NOTFOUND : 해당 SQL 문에영향을받는행의수가없을경우참 SQL%ISOPEN : 항상 FALSE, 암시적커서가열려있는지여부검색 한빛미디어

56 한빛미디어

57 명시적커서 (Explicit Cursor) PL/SQL 블럭에서프로그래머가커서를제어하도록함 커서선언하기 커서는사용하기젂에먼저선언되어야함 선언된커서는한개의이름이할당되고 SELECT 문과연결됨. 커서선언내에는 INTO 젃을쓰지않는다. 커서선언문의구조 DECLARE CURSOR 커서이름 IS select 문 ; 명시적커서의제어단계 한빛미디어

58 커서선언 한빛미디어

59 커서열기 (OPEN) OPEN 문사용 커서안의검색이실행되며아무럮데이터행을추출하지못하면에러발생 OPEN 커서이름 ; 커서패치 (FETCH) 현재데이터행을 OUTPUT 변수에반홖 커서의 SELECT 문의컬럼수와 OUTPUT 변수의수가동읷해야함. 커서컬럼의변수타입과 OUTPUT 변수의데이터타입도동읷해야함. 한행씩데이터패치. 커서패치구문 FETCH 커서이름 INTO 변수 _1, 변수 _2 ; 한빛미디어

60 커서닫기 (CLOSE) 사용을마칚커서는다른변수의이름으로다시열수있도록반드시닫아주어야한다. 커서를닫은상태에서 FETCH 를할수없다. CLOSE 커서이름 ; 한빛미디어

61 커서를이용한데이터처리하기 실행결과 한빛미디어

62 FOR 문에서커서사용하기 FOR LOOP 문을사용하면커서의 OPEN, FETCH, CLOSE 가자동발생하므로따로기술할필요가없으며, 레코드이름도자동선언되므로따로선언할필요가없다 FOR 레코드이름 IN 커서이름 LOOP 문장 1; 문장 2;... END LOOP; 한빛미디어

63 한빛미디어

64 예외 (Exceptions) 오라클 PL/SQL 의오류 PL/SQL 을컴파읷할때문법적읶오류로발생하는컴파읷타임오류와프로그램을실행할때발생하는실행타임오류로구분 컴파읷타임오류 오라클 PL/SQL 컴파읷러에의해발생 실행타임오류 오라클 PL/SQL 엔진에의해오류여부검색 예외종류설명처리 미리정의된오라클서버에러 미리정의되지않은오라클서버에러 오라클 PL/SQL 코드에서자주발생하는오류 오라클서버오류를제외하고미리정의된오류 선언할필요없이예외절에서자동으로트랩 (Trap) 선언부에서선언해야하고오류가발생하면자동으로트랩 사용자정의에러사용자가설정한오류처리 선언부에서선언하고실행부에서 RAISE 문을사용하여발생 오라클 PL/SQL 오류의종류 한빛미디어

65 예외젃구조 예외젃 예외를명확하게함으로써프로그램구조를이해하기쉽도록함 명시된오류가발생하는경우프로그램을중지하기보다는예외젃에의해처리되도록함. 예외젃구조 EXCEPTION WHEN 예외 _1 [ OR 예외 _2 ] THEN 실행문 _1;... WHEN 예외 _3 [ OR 예외 _4 ] THEN 실행문 _2;... WHEN OTHERS THEN 실행문 _2;... 마지막에하나의 WHEN OTHERS 문사용가능 여러개의예외처리부 (Exception Handler) 를허용하여예외가발생하면여러개의예외처리부중에하나의예외처리부에트랩 (Trap) 한빛미디어

66 미리정의된예외 예외 ACCESS_INTO_NULL CASE_NOT_FOUND CURSOR_ALREADY_OPEN DUP_VAL_ON_INDEX INVALID_CURSOR INVALID_NUMBER LOGIN_DENIED NO_DATA_FOUND NOT_LOGGED_ON PROGRAM_ERROR 오라클에러 (SQLCODE) ORA (-6530) ORA (-6592) ORA (-6511) ORA (-1) ORA (-1001) ORA (-1722) ORA (-1017) ORA (+100) ORA (-1012) ORA (-6501) 설명 초기화되지않은객체에값을할당하는경우 CASE 문에 ELSE 절이없는경우 이미열려있는커서를다시열려고하는경우 UNIQUE 제약을가지는컬럼에중복되는데이터를삽입하려고하는경우 잘못된커서연산을수행하려고하는경우 잘못된숫자를표현한경우 사용자아이디와암호를가지고오라클에로그인하는경우 SELECT 문이반환할데이터행이없는경우 오라클에연결되지않은데이터베이스를호출하는경우 내부 PL/SQL 오류 한빛미디어

67 예외 SELF_IS_NULL STORAGE_ERROR SUBSCRIPT_BEYOND_COUNT SUBSCRIPT_OUTSIDE_LIMIT TIMEOUT_ON_RESOURCE TOO_MANY_ROWS VALUE_ERROR ZERO_DIVIDE 오라클에러 (SQLCODE) ORA (-30625) ORA (-6500) ORA (-6533) ORA (-6532) ORA (-51) ORA (-1422) ORA (-6502) ORA (-1476) 설명 NULL 인스턴스에대해 MEMBER 메소드를호출한경우 메모리부족으로일어나는 PL/SQL 내부오류 엘리먼트의수보다큰인덱스를가지고중첩된테이블이나변수를호출한경우 범위이외의수를가지고중첩된테이블이나변수를호출한경우 자원을기다리는동안 TIME-OUT 이발생한경우 SELECT 문이하나이상의행을반환하는경우 숫자의계산, 변환, 버림등에서발생한오류 0 으로나누려하는경우 한빛미디어

68 미리정의되지않은오류 오라클의오류중에서미리정의되지않은오류를정의하여사용하려면다음단계로처리 미리정의되지않은오류처리 ❶ 예외이름을선언절에서선언 ❷ 선언절에서 PRAGMA EXCEPTION_INIT 문장으로예외의이름과오라클서버오류번호를결합 ❸ 실행절에서예외가발생한경우해당예외를참조 한빛미디어

69 미리정의되지않은오류처리 예외젃에서 WHEN OTHERS 문으로트랩되는에러들의실제에러코드와그설명을실제로확읶하고싶으면 SQLCODE 와 SQLERRM 을사용 SQLCODE 값 설명 0 오류없이성공적으로종료 1 사용자정의예외번호 +100 NO_DATA_FOUND 예외번호 음수 위에것을제외한오라클서버에러번호 SQLCODE 값 한빛미디어

70 사용자정의예외 사용자는오라클저장함수 RAISE_APPLICATION_ERROR 를사용하여에러코드 부터 의범위내에서사용자정의예외생성가능 생성단계 ❶ 선언절에서예외이름선언 ❷ RAISE 문을사용하여실행절에서예외를직접적으로발생시킴 ❸ 예외절에서예외가발생할경우예외를참조 한빛미디어

71 한빛미디어

72 패키지 (package) 오라클데이터베이스에저장되어있는서로관렦있는 PL/SQL 프로시저와함수의집합 선언부와본문두부분으로구성 패키지인터페이스 한빛미디어

73 패키지선언부 특짓 패키지에포함될 PL/SQL 프로시저나, 함수, 커서, 변수, 예외젃등을선언 패키지선언부에서선언한모든요소는패키지젂체에적용 선언부에서선언한변수는 PUBLIC 변수로사용 패키지선언부의선언은 CREATE PACKAGE 또는 CREATE OR REPLACE PACKAGE 문사용 CREATE [OR REPLACE] PACKAGE 패키지이름 [ AUTHID { CURRENT_USER DEFINER } ] { IS AS } [ PRAGMA SERIALLY_REUSABLE; ] [ collection_type_definition... ] [ record_type_definition... ] [ subtype_definition... ] [ collection_declaration... ] [ constant_declaration... ] [ exception_declaration... ] [ object_declaration... ] [ record_declaration... ] END [ 패키지이름 ]; 한빛미디어

74 패키지본문 패키지에서선언된요소의실행을정의하는부분 선언된요소의실제코드를작성하는부분 CREATE PACKAGE 또는 CREATE OR REPLACE PACKAGE 문을사용하여정의 [ CREATE [ OR REPLACE ] PACKAGE BODY 패키지이름 { IS AS } [ PRAGMA SERIALLY_REUSABLE; ] [ collection_type_definition... ] [ record_type_definition... ] [ subtype_definition... ] [ collection_declaration... ] [ constant_declaration... ] [ exception_declaration... ] [ object_declaration... ] [ record_declaration... ] [ variable_declaration... ] [ cursor_body... ] [ function_spec... ] [ procedure_spec... ] [ call_spec... ] [ BEGIN sequence_of_statements ] END [ 패키지이름 ]; ] 한빛미디어

75 오라클트리거 (Trigger) 특짓 어떤사건이발생했을때내부적으로실행되도록데이터베이스에저장된프로시저 선언젃, 실행젃, 예외젃을가지는 PL/SQL 블록구조를가지고데이터베이스에저장되어야한다 트리거링사건 (Triggering Event), 즉오라클 DML 문읶 INSERT, DELETE, UPDATE 이실행되면자동으로실행. 한빛미디어

76 오라클트리거사용범위 데이터베이스테이블생성하는과정에서참조무결성과데이터무결성등의복잡한제약조건생성하는경우 데이터베이스테이블의데이터에생기는작업의감시, 보완 데이터베이스테이블에생기는변화에따라필요한다른프로그램을실행하는경우 불필요한트랜잭션을금지하기위해 컬럼의값을자동으로생성되도록하는경우 복잡한뷰를생성하는경우 한빛미디어

77 트리거생성하기 특짓 CREATE TRIGGERS 문을사용하여생성 트리거를생성하기위해서는 CREATE TRIGGER 권한을가지고있어야맊함. 문법의구조 CREATE [ OR REPLACE ] TRIGGERS 트리거이름 BEFORE AFTER Triggering_event ON 테이블이름 [ FOR EACH ROW ] [ WHEN ( 조건식 ) ] PL/SQL 블록 ; 한빛미디어

78 트리거실행결과 한빛미디어

79 문장트리거와행트리거 FOR EACH ROW 옵션젃의사용유무에따라문장트리거 (Statement- Lavel Trigger) 와행트리거 (Row-Level Trigger) 로구분 FOR EACH ROW 옵션젃을사용한트리거가행트리거 문장트리거 트리거링사건에대해딱한번맊실행 컬럼의각데이터행을제어할수없다 컬럼의데이터값에관계없이컬럼에변화가읷어남을감지하여실행되는트리거 행트리거 컬럼의각데이터행이변경될때마다실행 실제그데이터행의값을제어할수있는트리거 실제값을수정, 변경또는저장하기위해사용. 행트리거에서실제데이터를제어하기위해사용하는읶자 :old" 와 :new SQL 문에따른사용방법 INSERT 문의경우 : 입력할데이터의값이 :new. 컬럼이름 에저장. UPDATE 문의경우 : 변경젂의데이터는 :old. 컬럼이름 에저장되고, 새로운데이터값은 :new. 컬럼이름 에저장. DELETE 문의경우 : 삭제되는컬럼값이 :old. 컬럼이름 에저장. 한빛미디어

80 BEFORE/AFTER 옵션을사용한트리거링시점제어하기 오라클트리거유형 문장트리거 BEFORE INSERT, AFTER INSERT, BEFORE UPDATE, AFTER UPDATE, AFTER DELETE, BEFORE DELETE 행트리거 BEFORE INSERT, AFTER INSERT, BEFORE UPDATE, AFTER UPDATE, AFTER DELETE, BEFORE DELETE 트리거링시점 한빛미디어

81 트리거 CASCADING 정의 한트리거가다른트리거를실행시키는것 프로시저또는함수사용하기 사용자정의함수와오라클저장함수와데이터베이스에저장된모든프로시저와함수를호출가능 예 오라클저장함수읶 SUM 과 EMP_INFO 패키지의 DEPT_SALARY_INFO 프로시저를사용하는예제 한빛미디어

82 다른트리거사용하기 - 트리거 CASCADING TEST1의 COL_1 컬럼에값이삽입된후 TEST2 테이블의 COL_2 컬럼의데이터를수정하는 TEST_INSERT_AFTER 트리거와 TEST2 테이블의컬럼데이터가 UPDATE되면 TEST3 테이블의 COL_3 데이터를삭제하는 TEST2_UPDATE_AFTER 트리거발생 한빛미디어

83 트리거삭제와홗성화 / 비홗성화 트리거삭제 DROP TRIGGER 문사용 DROP TRIGGER 트리거이름 ; 트리거홗성화 / 비홗성화 ALTER TRIGGER 문사용 ALTER TRIGGER 트리거이름 DISABLE ; ALTER TRIGGER 트리거이름 ENABLE ; 한빛미디어

(Microsoft Word - PLSQL\300\314\266\365.doc)

(Microsoft Word - PLSQL\300\314\266\365.doc) 오라클 PL/SQL 제를다른홈페이지에기재할경우에는출처를꼭밝혀주세요. (http://www.oracleclub.com) 1 PL/SQL 의개요 1.1 PLSQL 이란? [ 2002/01/20 ] 1.2 PL/SQL Block 구조 [ 2002/05/09 ] 1.3 PL/SQL 블럭의유형 [ 2002/05/09 ] 2 프로시저 (PROCEDURE) 와함수 (FUNCTION)

More information

MySQL-.. 1

MySQL-.. 1 MySQL- 기초 1 Jinseog Kim Dongguk University jinseog.kim@gmail.com 2017-08-25 Jinseog Kim Dongguk University jinseog.kim@gmail.com MySQL-기초 1 2017-08-25 1 / 18 SQL의 기초 SQL은 아래의 용도로 구성됨 데이터정의 언어(Data definition

More information

슬라이드 1

슬라이드 1 17.1 데이터베이스트리거 17.2 DML 트리거 17.3 DML 트리거작성 17.4 DML 트리거관리 17.5 INSTEAD OF 트리거 17.6 NON-DML 트리거 17.1 데이터베이스트리거 데이터베이스트리거 (database trigger) 테이블에어떤조작이가해졌을때에미리지정해놓은처리를자동으로실행시키는블록 PL/SQL 블록으로작성, 오라클데이터베이스에저장

More information

윈도우즈프로그래밍(1)

윈도우즈프로그래밍(1) 제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장

More information

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp 1 0 1.7 6 5 'A ' '/ u 4 4 2 2 ' " JS P 프로그래밍 " A ', 'b ', ' 한 ', 9, \ u d 6 5 4 ' c h a r a = 'A '; 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 < % @ p a g e c o n te n

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

Chapter 4. LISTS

Chapter 4. LISTS C 언어에서리스트구현 리스트의생성 struct node { int data; struct node *link; ; struct node *ptr = NULL; ptr = (struct node *) malloc(sizeof(struct node)); Self-referential structure NULL: defined in stdio.h(k&r C) or

More information

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770>

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770> 예약어(reserved word) : 프로그래밍 언어에서 특별한 용도로 사용하고자 미리 지정한 단어 - 프로그램의 구성요소를 구별하게 해주는 역할 => 라벨, 서브 프로그램 이름, 변수에 연관되어 다른 변수나 서브 프로그램 등과 구별 - 식별자의 최대길이는 언어마다 각각 다르며 허용길이를 넘어서면 나머지 문자열은 무시됨 - FORTRAN, COBOL, HTML

More information

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770> 제 8강 SQL: 관계데이터베이스언어 강의목표 관계데이타베이스언어로서상용 DBMS에서가장널리사용되는 SQL의동작원리에관하여학습하고, 이를이용하여다양한질의문을작성하는방법을습득한다 기대효과 SQL의데이터정의기능을이해한다 SQL의데이터조작기능중질의기능을이해한다 SQL의데이터조작기능중데이터갱신기능을이해한다 SQL의데이터조작기능중뷰및인덱스관련기능을이해한다 SQL 의개요

More information

슬라이드 1

슬라이드 1 UNIT 16 예외처리 로봇 SW 교육원 3 기 최상훈 학습목표 2 예외처리구문 try-catch-finally 문을사용핛수있다. 프로그램오류 3 프로그램오류의종류 컴파일에러 (compile-time error) : 컴파일실행시발생 럮타임에러 (runtime error) : 프로그램실행시발생 에러 (error) 프로그램코드에의해서해결될수없는심각핚오류 ex)

More information

Microsoft PowerPoint - CSharp-10-예외처리

Microsoft PowerPoint - CSharp-10-예외처리 10 장. 예외처리 예외처리개념 예외처리구문 사용자정의예외클래스와예외전파 순천향대학교컴퓨터학부이상정 1 예외처리개념 순천향대학교컴퓨터학부이상정 2 예외처리 오류 컴파일타임오류 (Compile-Time Error) 구문오류이기때문에컴파일러의구문오류메시지에의해쉽게교정 런타임오류 (Run-Time Error) 디버깅의절차를거치지않으면잡기어려운심각한오류 시스템에심각한문제를줄수도있다.

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

Chapter ...

Chapter ... Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준

More information

<C6F7C6AEB6F5B1B3C0E72E687770> 1-1. 포트란 언어의 역사 1 1-2. 포트란 언어의 실행 단계 1 1-3. 문제해결의 순서 2 1-4. Overview of Fortran 2 1-5. Use of Columns in Fortran 3 1-6. INTEGER, REAL, and CHARACTER Data Types 4 1-7. Arithmetic Expressions 4 1-8. 포트란에서의

More information

Java ...

Java ... 컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

Chapter_06

Chapter_06 프로그래밍 1 1 Chapter 6. Functions and Program Structure April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 이장의강의목표 2 문자의입력방법을이해한다. 중첩된 if문을이해한다. while 반복문의사용법을익힌다. do 반복문의사용법을익힌다.

More information

PowerPoint Template

PowerPoint Template 10. 예외처리 대구가톨릭대학교 IT 공학부 소프트웨어공학연구실 목차 2 10.1 개요 10.2 C++ 의예외처리 10.3 Java 의예외처리 10.4 Ada 의예외처리 10.1 예외처리의개요 (1) 3 예외 (exception) 오버플로나언더플로, 0 으로나누기, 배열첨자범위이탈오류와같이프로그램실행중에비정상적으로발생하는사건 예외처리 (exception handling)

More information

컴파일러

컴파일러 YACC 응용예 Desktop Calculator 7/23 Lex 입력 수식문법을위한 lex 입력 : calc.l %{ #include calc.tab.h" %} %% [0-9]+ return(number) [ \t] \n return(0) \+ return('+') \* return('*'). { printf("'%c': illegal character\n",

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 11 곡선과곡면 01 Spline 곡선 02 Spline 곡면 03 Subdivision 곡면 C n 연속성 C 0 연속성 C 1 연속성 2 C 2 연속성 01 Spline 곡선 1. Cardinal Spline Curve 2. Hermite Spline Curve 3. Bezier Spline Curve 4. Catmull-Rom Spline Curve 5.

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.

More information

Microsoft PowerPoint - QVIZMVUMWURI.pptx

Microsoft PowerPoint - QVIZMVUMWURI.pptx 데이타베이스시스템 2011.03 충북대학교경영정보학과조완섭 (wscho@chungbuk.ac.kr) Chap. 4 SQL 질의어 C4 2 목차 - SQL2에서데이터정의, 제약조건및스키마변경 - SQL에서의기본질의 - 더복잡한 SQL 질의들 - SQL에서삽입, 삭제, 갱신구문 - SQL 뷰 - 주장으로추가적인제약조건명시 - SQL의부가적인기능들 Ch4 3 SQL

More information

Microsoft Word - FunctionCall

Microsoft Word - FunctionCall Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

슬라이드 1

슬라이드 1 마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***

More information

Microsoft PowerPoint - ch10 - 이진트리, AVL 트리, 트리 응용 pm0600

Microsoft PowerPoint - ch10 - 이진트리, AVL 트리, 트리 응용 pm0600 균형이진탐색트리 -VL Tree delson, Velskii, Landis에의해 1962년에제안됨 VL trees are balanced n VL Tree is a binary search tree such that for every internal node v of T, the heights of the children of v can differ by at

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 9 강. 클래스의활용목차 멤버함수의외부정의 this 포인터 friend 선언 static 멤버 임시객체 1 /17 9 강. 클래스의활용멤버함수의외부정의 멤버함수정의구현방법 내부정의 : 클래스선언내에함수정의구현 외부정의 클래스선언 : 함수프로토타입 멤버함수정의 : 클래스선언외부에구현

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f JPA 에서 QueryDSL 사용하기위해 JPAQuery 인스턴스생성방법 http://ojc.asia, http://ojcedu.com 1. JPAQuery 를직접생성하기 JPAQuery 인스턴스생성하기 QueryDSL의 JPAQuery API를사용하려면 JPAQuery 인스턴스를생성하면된다. // entitymanager는 JPA의 EntityManage

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

最即時的Sybase ASE Server資料庫診斷工具

最即時的Sybase ASE Server資料庫診斷工具 TOAD 9.5 Toad Oracle 料 SQL 料 行 理 SQLprofile Quest Software 了 Oracle -Toad Tools of Oracle Application Developers Toad 了 DBA DBA 理 易 度 Toad 料 SQL PL/SQL Toad Oracle PL/SQL Toad Schema Browser Schema Browser

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Verilog: Finite State Machines CSED311 Lab03 Joonsung Kim, joonsung90@postech.ac.kr Finite State Machines Digital system design 시간에배운것과같습니다. Moore / Mealy machines Verilog 를이용해서어떻게구현할까? 2 Finite State

More information

PostgreSQL 2 Uniersity of California at Berkeley ( ) 에서개발된관계형데이터베이스서버인 Ingres 가시초 ( 후에 Computer Associates 에인수됨 ) 1

PostgreSQL 2  Uniersity of California at Berkeley ( ) 에서개발된관계형데이터베이스서버인 Ingres 가시초 ( 후에 Computer Associates 에인수됨 ) 1 ERwin 과 PostgreSQL 연동하기 인하대학교지리정보공학과데이터베이스실습 PostgreSQL 2 http://www.postgresql.org/ Uniersity of California at Berkeley (1977-1985) 에서개발된관계형데이터베이스서버인 Ingres 가시초 ( 후에 Computer Associates 에인수됨 ) 1996 년부터

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 SQL Server 2012 T-SQL New Feature 씨퀄로김민정책임컨설턴트 목차 SQL Server 2012 SSMS 수정사항 SQL Server 2012 향상된프로그래밍기능 SQL Server 2012 에서지원되지않는데이터베이스엔진기능 SQL Server 2012 SSMS 수정사항 Multi Monitor 기본글꼴변경 Courier New -> Consolas

More information

Oracle Database: Introduction to SQL(Oracle Database: Fundamentals I 권장이수과정 Previous programm 교육목표내장프로시저와함수생성및 유연성증대를위해오버로드된패키지서브프로그 업무과제해결을위한트리거 PL/S

Oracle Database: Introduction to SQL(Oracle Database: Fundamentals I 권장이수과정 Previous programm 교육목표내장프로시저와함수생성및 유연성증대를위해오버로드된패키지서브프로그 업무과제해결을위한트리거 PL/S Oracle Uni 문의전화 : 080-2194 Oracle Database: Program with PL/SQL ( 한국어 ) Durat5 교육과정상세보기본과정에서는먼저 PL/SQL을소개한후이강력한프로그래밍언어의이점을설명합니다. 여러터관리응용프로그램에서공유할수있는응용프로그램코드를 PL/SQL 블록으로생성하는방록의생성방법과내장프로시저및함수에대해설명합니다. 참가자는프로시저,

More information

TITLE

TITLE CSED421 Database Systems Lab MySQL Basic Syntax SQL DML & DDL Data Manipulation Language SELECT UPDATE DELETE INSERT INTO Data Definition Language CREATE DATABASE ALTER DATABASE CREATE TABLE ALTER TABLE

More information

ORACLE-SQL

ORACLE-SQL ORACLE-SQL SELECT 문 2014-04-12 Blog.ksh123jjang.me 내용 SELECT문이란?... 2 SLELECT문사용하기... 3 모든열선택... 4 특정열검색... 5 SQL문작성방법... 6 열머리글기본값... 7 산술식... 8 NULL... 9 열 alias... 10 연결연산자... 11 대체인용연산자 (q)... 12 중복행제거...

More information

1장. 유닉스 시스템 프로그래밍 개요

1장.  유닉스 시스템 프로그래밍 개요 Unix 프로그래밍및실습 7 장. 시그널 - 과제보충 응용과제 1 부모프로세스는반복해서메뉴를출력하고사용자로부터주문을받아자식프로세스에게주문내용을알린다. (SIGUSR1) ( 일단주문을받으면음식이완료되기전까지 SIGUSR1 을제외한다른시그널은모두무시 ) timer 자식프로세스는주문을받으면조리를시작한다. ( 일단조리를시작하면음식이완성되기전까지 SIGALARM 을제외한다른시그널은모두무시

More information

오버라이딩 (Overriding)

오버라이딩 (Overriding) WindowEvent WindowEvent 윈도우가열리거나 (opened) 닫힐때 (closed) 활성화되거나 (activated) 비활성화될때 (deactivated) 최소화되거나 (iconified) 복귀될때 (deiconified) 윈도우닫힘버튼을누를때 (closing) WindowEvent 수신자 abstract class WindowListener

More information

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1); void method() 2); void method1() public class Test 3); args) A 제 10 장상속 예제 1) ConstructorTest.java class Parent public Parent() super - default"); public Parent(int i) this("hello"); super(int) constructor" + i); public Parent(char c) this(); super(char) constructor

More information

Microsoft Word - 07_TRIGGER.doc

Microsoft Word - 07_TRIGGER.doc DATABASE TRIGGER INTRODUCTION 프로그램단위 1 의하나인트리거 2 (Trigger) 는테이블, 뷰, 스키마또는데이터베이스에관련된 PLSQL 블록 ( 또는프로시저 ) 으로관련된특정사건 (Event) 이발생될때마다묵시적 ( 자동 ) 으로실행이이루어진다 (Fire). 트리거를생성할때관련된사건 (Event) 도함께정의되며, 실행부에서저장된프로시저

More information

Altibase Stored Procedure Manual

Altibase Stored Procedure Manual ALTIBASE HDB Application Development C/C++ External Procedures Manual Release 6.3.1 (April 16, 2015) ----------------------------------------------------------- ALTIBASE Application Development C/C++ External

More information

- 다음은 Statement 객체를사용해서삽입 (insert) 작업의예 String sql = "insert into member(code, name, id, pwd, age) values ("; int id = 10; sql = sql + id +, ;// 항목사이에

- 다음은 Statement 객체를사용해서삽입 (insert) 작업의예 String sql = insert into member(code, name, id, pwd, age) values (; int id = 10; sql = sql + id +, ;// 항목사이에 Statement 객체와 PreparedStatement 객체 Connection 객체 - Connection 객체가생성되면데이터베이스에접근이가능해진다. - Connection 객체는자바와데이터베이스의접속된상태의객체를말한다. 데이터베이스에 DML작업을위해서는반드시접속을먼저해야한다. 그리고, 작업후에는반드시접속을해제한다. - Connection 객체를생성할때두개의문자열이필요하다.

More information

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2 5 장 SQL 응용 데이터베이스실험실 1 [ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL 5.2.1 T-SQL 문법 5.3 JAVA 프로그래밍 2 5.1 데이터베이스프로그래밍개념 프로그래밍 이라고하면프로그램소스를설계하고, 작성하고, 디버깅하는과정을말한다. 프로그램 혹은소프트웨어는컴퓨터에서주어진작업을하는명령어나열을말한다. 데이터베이스프로그래밍은명확한정의는없지만데이터베이스에데이터를정의하고,

More information

Microsoft PowerPoint SQL 추가 기능

Microsoft PowerPoint SQL 추가 기능 데이터베이스 (Database) : 주장, 뷰, 프로그래밍기법 문양세강원대학교 IT특성화대학컴퓨터과학전공 강의내용 주장 (Assertions) 으로일반적인제약조건명시 SQL 에서뷰 ( 가상테이블 ) 데이터베이스프로그래밍 내포된 SQL (Embedded SQL) 함수호출, SQL/CLI [ 생략 ] 저장프로시저와 SQL/PSM [ 생략 ] 요약 Page 2 주장

More information

Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 3. FindBugs ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 4. ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ

Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 3. FindBugs ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 4. ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 정적분석서 - 영단어수집왕 - Team.# 3 과목명 소프트웨어모델링및분석 담당교수 유준범교수님 201011320 김용현 팀원 201111360 손준익 201111347 김태호 제출일자 2015-06-09 1 Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics

More information

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public Chapter 9 Lab 문제정답 1. public class Circle private double radius; static final double PI=3.141592; // PI 이름으로 3.141592 로초기화된정적상수 (1) public Circle(double r) radius = r; (2) public double getradius() return

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 예외처리 배효철 th1g@nate.com 1 목차 예외와예외클래스 실행예외 예외처리코드 예외종류에따른처리코드 자동리소스닫기 예외처리떠넘기기 사용자정의예외와예외발생 예외와예외클래스 구문오류 예외와예외클래스 구문오류가없는데실행시오류가발생하는경우 예외와예외클래스 import java.util.scanner; public class ExceptionExample1

More information

Introduction to Geotechnical Engineering II

Introduction to  Geotechnical Engineering II Fundamentals of Computer System - chapter 9. Functions 민기복 Ki-Bok Min, PhD 서울대학교에너지자원공학과조교수 Assistant Professor, Energy Resources Engineering Last week Chapter 7. C control statements: Branching and Jumps

More information

<B3EDB4DC28B1E8BCAEC7F6292E687770> 1) 초고를읽고소중한조언을주신여러분들게감사드린다. 소중한조언들에도불구하고이글이포함하는오류는전적으로저자개인의것임을밝혀둔다. 2) 대표적인학자가 Asia's Next Giant: South Korea and Late Industrialization, 1990 을저술한 MIT 의 A. Amsden 교수이다. - 1 - - 2 - 3) 계량방법론은회귀분석 (regression)

More information

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

Tina Admin

Tina Admin Lock session 확인 2010 년 01 월 27 일 DB 기술지원팀 문서정보 프로젝트명 Lock session 확인 서브시스템명 버전 1.0 문서명 작성일 2011-01-31 작성자 최종수정일 2011-01-31 문서번호 재개정이력 일자내용수정인버전 문서배포이력 발신자수신자배포목적일자비고 유니원아이앤씨 기술문서. Table of Contents 1 오라클의

More information

Microsoft PowerPoint - 27.pptx

Microsoft PowerPoint - 27.pptx 이산수학 () n-항관계 (n-ary Relations) 2011년봄학기 강원대학교컴퓨터과학전공문양세 n-ary Relations (n-항관계 ) An n-ary relation R on sets A 1,,A n, written R:A 1,,A n, is a subset R A 1 A n. (A 1,,A n 에대한 n- 항관계 R 은 A 1 A n 의부분집합이다.)

More information

Microsoft PowerPoint - ch02-1.ppt

Microsoft PowerPoint - ch02-1.ppt 2. Coodinte Sstems nd Tnsfomtion 20 20 2.2 Ctesin Coodintes (,, ) () (b) Figue 1.1 () Unit vectos,, nd, (b) components of long,, nd. 직각좌표계에서각변수 (,, ) 들의범위 < < < < < < (2.1) 직각좌표계에서임의의벡터 는,, 가그림 1.1 에서와같이,,

More information

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor 19. 전처리와분할컴파일 순천향대학교컴퓨터학부이상정 1 학습내용 전처리명령어 #include #define 기호상수 const 분할컴파일 순천향대학교컴퓨터학부이상정 2 전처리과정 전처리 (preprocessor) 전처리명령어는 # 기호로시작 #incldue #define 순천향대학교컴퓨터학부이상정 3 #include (1) 지정된파일을프로그램에삽입 꺽쇠괄호는포함할파일을컴파일러에설정되어있는특정디렉토리에서검색

More information

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할수없습니다. 변경금지. 귀하는이저작물을개작, 변형또는가공할수없습니다. 귀하는, 이저작물의재이용이나배포의경우,

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 ORACLE to ALTIBASE 변환가이드 ALTIBASE 5.5 Copyright c 2000~2013 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change Reference

More information

제 1 장 기본 개념

제 1 장 기본 개념 이진트리순회와트리반복자 트리순회 (tree traversal) 트리에있는모든노드를한번씩만방문 순회방법 : LVR, LRV, VLR, VRL, RVL, RLV L : 왼쪽이동, V : 노드방문, R : 오른쪽이동 왼쪽을오른쪽보다먼저방문 (LR) LVR : 중위 (inorder) 순회 VLR : 전위 (preorder) 순회 LRV : 후위 (postorder)

More information

예제소스는 에서다운로드하여사용하거나툴바의 [ 새쿼리 ]( 에아래의소스를입력한다. 입력후에는앞으로실습을위해서저장해둔다. -- 실습에필요한 Madang DB 와 COMPANY DB 를모두생성한다. -- 데이터베이스생성 US

예제소스는  에서다운로드하여사용하거나툴바의 [ 새쿼리 ]( 에아래의소스를입력한다. 입력후에는앞으로실습을위해서저장해둔다. -- 실습에필요한 Madang DB 와 COMPANY DB 를모두생성한다. -- 데이터베이스생성 US A.4 마당서점데이터베이스생성 1 마당서점의데이터베이스 Madang을생성하기위해윈도우의 [ 시작 ]-[ 모든프로그램 ]- [Microsoft SQL Server 2012]-[SQL Server Management Studio] 를선택한다. 인증을 [Windows 인증 ] 으로선택한후 < 연결 > 을클릭한다. 2 1 3 서버이름 MADANG_DB\SQLEXPRESS

More information

PHP & ASP

PHP & ASP 단어장프로젝트 프로젝트2 단어장 select * from address where address like '% 경기도 %' td,li,input{font-size:9pt}

More information

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET 135-080 679-4 13 02-3430-1200 1 2 11 2 12 2 2 8 21 Connection 8 22 UniSQLConnection 8 23 8 24 / / 9 3 UniSQL 11 31 OID 11 311 11 312 14 313 16 314 17 32 SET 19 321 20 322 23 323 24 33 GLO 26 331 GLO 26

More information

개발문서 Oracle - Clob

개발문서 Oracle - Clob 개발문서 ORACLE CLOB 2008.6.9 ( 주 ) 아이캔매니지먼트 개발팀황순규 0. clob개요 1. lob과 long의비교와 clob와 blob 2. 테이블생성쿼리 ( 차이점-추가사항 ) 3. select 쿼리 4. insert 쿼리및 jdbc프로그래밍 5. update 쿼리및 jdbc프로그래밍 (4, 5). putclobdata() 클래스 6. select

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 11 장상속 이번장에서학습할내용 상속이란? 상속의사용 메소드재정의 접근지정자 상속과생성자 Object 클래스 종단클래스 상속을코드를재사용하기위한중요한기법입니다. 상속이란? 상속의개념은현실세계에도존재한다. 상속의장점 상속의장점 상속을통하여기존클래스의필드와메소드를재사용 기존클래스의일부변경도가능 상속을이용하게되면복잡한 GUI 프로그램을순식간에작성

More information

...... ....-....-155 09.1.20

...... ....-....-155 09.1.20 접지 접지 ISBN 978-89-6211-252-8 슈퍼컴퓨터가 만드는 디디컴 C M Y K 슈퍼컴퓨터가 만드는 C M Y K 슈퍼컴퓨터가 만드는 디디컴 uper 슈퍼컴퓨터가 만드는 발행일 슈퍼컴퓨터는 슈퍼맨처럼 보통의 컴퓨터로는 도저히 2008년 10월 3 1일 1쇄 발행 2009년 01월 30일 2쇄 발행 엄두도 낼 수 없는 대용량의 정보들을 아주 빠르게

More information

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가 www.kdnetwork.com 특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가능할 삭제할 건전지 사용자를 위한 개별 비밀번호 및 RF카드

More information

Microsoft PowerPoint - hy2-12.pptx

Microsoft PowerPoint - hy2-12.pptx CPU의구조와기능 CPU 의명령어수행과정 명령어인출 (Instruction Fetch) : 기억장치로부터명령어를읽어온다 명령어해독 (Instruction Decode) : 수행해야할동작을결정하기위하여명령어를해독한다 모든명령어들에대하여공통적으로수행 데이터인출 (Data Fetch) : 명령어실행을위하여데이터가필요한경우에는기억장치혹은 I/O 장치로부터그데이터를읽어온다

More information

웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2

웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2 DB 와 WEB 연동 (1) [2-Tier] Java Applet 이용 웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2 JAVA Applet 을이용한 Client Server 연동기법 } Applet

More information

교육자료

교육자료 THE SYS4U DODUMENT Java Reflection & Introspection 2012.08.21 김진아사원 2012 SYS4U I&C All rights reserved. 목차 I. 개념 1. Reflection 이란? 2. Introspection 이란? 3. Reflection 과 Introspection 의차이점 II. 실제사용예 1. Instance의생성

More information

<4D F736F F D20BFC0B6F3C5AC20C8A3C8AFBCBA20B0B3B9DFC0DA20B0A1C0CCB5E539372E646F63>

<4D F736F F D20BFC0B6F3C5AC20C8A3C8AFBCBA20B0B3B9DFC0DA20B0A1C0CCB5E539372E646F63> Postgres Plus Advanced Server 8.3 March 14, 2008 1 Oracle 오라클호환성개발자가이드 By EnterpriseDB Corporation Copyright 2008 EnterpriseDB Corporation EnterpriseDB Corporation, 499 Thornall Street, Edison, New Jersey

More information

vi 사용법

vi 사용법 네트워크프로그래밍 6 장과제샘플코드 - 1:1 채팅 (udp 버전 ) 과제 서버에서먼저 bind 하고그포트를다른사람에게알려줄것 클라이언트에서알려준포트로접속 서로간에키보드입력을받아상대방에게메시지전송 2 Makefile 1 SRC_DIR =../../common 2 COM_OBJS = $(SRC_DIR)/addressUtility.o $(SRC_DIR)/dieWithMessage.o

More information

Java Programing Environment

Java Programing Environment Lab Exercise #7 Swing Component 프로그래밍 2007 봄학기 고급프로그래밍 김영국충남대전기정보통신공학부 실습내용 실습과제 7-1 : 정규표현식을이용한사용자정보의유효성검사 (ATM 에서사용자등록용도로사용가능 ) 실습과제 7-2 : 숫자맞추기게임 실습과제 7-3 : 은행관리프로그램 고급프로그래밍 Swing Component 프로그래밍 2

More information

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어 개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 9 장생성자와접근제어 이번장에서학습할내용 생성자 정적변수 정적메소드 접근제어 this 클래스간의관계 객체가생성될때초기화를담당하는생성자에대하여살펴봅니다. 생성자 생성자 (contructor): 객체가생성될때에필드에게초기값을제공하고필요한초기화절차를실행하는메소드 생성자의예 class Car { private String color; // 색상

More information

Microsoft PowerPoint - CSharp-2-기초문법

Microsoft PowerPoint - CSharp-2-기초문법 2 장. C# 기초문법 자료형 제어문 배열 연산자 순천향대학교컴퓨터학부이상정 1 자료형 순천향대학교컴퓨터학부이상정 2 CTS CTS(Common Type System) 닷넷기반의여러언어에서공통으로사용되는자료형 언어별로서로다른자료형을사용할때발생할수있는호환성문제를해결 값 (Value) 형과참조 (Reference) 형을지원 CTS가제공하는모든자료형은 System.Object를상속받아구현

More information

신림프로그래머_클린코드.key

신림프로그래머_클린코드.key CLEAN CODE 6 11st Front Dev. Team 6 1. 2. 3. checked exception 4. 5. 6. 11 : 2 4 : java (50%), javascript (35%), SQL/PL-SQL (15%) : Spring, ibatis, Oracle, jquery ? , (, ) ( ) 클린코드를 무시한다면 . 6 1. ,,,!

More information

Microsoft PowerPoint - C_9장 포인터 pptx

Microsoft PowerPoint - C_9장 포인터 pptx C 프로그래밍및실습 9. 포인터 세종대학교 목차 1) 포인터란? 2) 배열과포인터 3) 포인터연산 4) 함수와포인터 5) * void 포인터 6) * 함수포인터 2 1) 포인터란? 메모리 프로그램이실행되기위해필요한정보 ( 값 ) 을저장하는공간 1 byte (8 bits) 단위로물리주소가부여되어있음 개념적으로, 메모리는일렬로연속되어있는크기가 1byte 인방들의모음이라고볼수있음

More information

07 자바의 다양한 클래스.key

07 자바의 다양한 클래스.key [ 07 ] . java.lang Object, Math, String, StringBuffer Byte, Short, Integer, Long, Float, Double, Boolean, Character. java.util Random, StringTokenizer Calendar, GregorianCalendar, Date. Collection, List,

More information

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The 4 th Lecture 유명환 ( yoo@netplug.co.kr) 1 시간 (Time) 에대한정의 INDEX 2 왜타이머 (Timer) 와카운터 (Counter) 인가? 3 ATmega128 타이머 / 카운터동작구조 4 ATmega128 타이머 / 카운터관련레지스터 5 뻔뻔한노하우 : 레지스터비트설정방법 6 ATmega128

More information

[ASP: 그림 2-2] date.asp 실행결과 DateAdd 지정된날짜에시간을추가하거나뺀새로운날짜를반환한다. 구문 : DateAdd(interval, number, date) interval : 필수적인인수로 interval 을추가한날짜를나타내는문자식이다. 그값에대

[ASP: 그림 2-2] date.asp 실행결과 DateAdd 지정된날짜에시간을추가하거나뺀새로운날짜를반환한다. 구문 : DateAdd(interval, number, date) interval : 필수적인인수로 interval 을추가한날짜를나타내는문자식이다. 그값에대 날짜와시간함수 h1. 날짜와시간함수 날짜와시간에관련된내용을표현하는함수들도 ASP 에서는중요한비중을가진다. 시스템에서제공하지못하는여러가지기능들을이런함수들을통해서구현이가능하다. 특히날짜연산에대한코드작성시많은도움을얻을수있는날짜와시간함수들에대해서알아보자. CDate Date 하위형식의 Variant 로변환된식을반환한다. 구문 : CDate(date) date 인수는유효한날짜식이면된다.

More information

Chapter 4. LISTS

Chapter 4. LISTS 연결리스트의응용 류관희 충북대학교 1 체인연산 체인을역순으로만드는 (inverting) 연산 3 개의포인터를적절히이용하여제자리 (in place) 에서문제를해결 typedef struct listnode *listpointer; typedef struct listnode { char data; listpointer link; ; 2 체인연산 체인을역순으로만드는

More information

[INPUT] 뒤에는변수와관련된정보를표기한다. [CARDS;] 뒤에는각각의변수가가지는관측값들을표기한다. >> 위의프로그램에서데이터셋명은 wghtclub 이고, 변수는 idno, name, team, strtwght, endwght 이다. 이중 name 과 team 은

[INPUT] 뒤에는변수와관련된정보를표기한다. [CARDS;] 뒤에는각각의변수가가지는관측값들을표기한다. >> 위의프로그램에서데이터셋명은 wghtclub 이고, 변수는 idno, name, team, strtwght, endwght 이다. 이중 name 과 team 은 SAS 의기본형식 1. INPUT 문 DATA wghtclub; INPUT idno 1-4 name $ 6-24 team $ strtwght endwght; loss=strtwght -endwght; CARDS; 1023 David Shaw red 189 165 1049 Amelia Serrno yellow 145 124 1219 Alan Nance red

More information

입학사정관제도

입학사정관제도 운영체제 강의노트 교재 : 운영체제 ( 개정판 ) 출판사 : 한빛미디어 (2010 년 11 월발행 ) 저자 : 구현회 소프트웨어학과원성현교수 1 4 장 병행프로세스와 상호배제 소프트웨어학과원성현교수 2 1. 병행프로세스 병행프로세스의과제 병행성 동시에 2 개이상의프로세스가실행되는성질 다중프로세싱시스템, 분산처리시스템에서주로발생 다중프로세싱시스템은프로세서의효율성을증대시킴

More information

Microsoft PowerPoint - PL_03-04.pptx

Microsoft PowerPoint - PL_03-04.pptx Copyright, 2011 H. Y. Kwak, Jeju National University. Kwak, Ho-Young http://cybertec.cheju.ac.kr Contents 1 프로그래밍 언어 소개 2 언어의 변천 3 프로그래밍 언어 설계 4 프로그래밍 언어의 구문과 구현 기법 5 6 7 컴파일러 개요 변수, 바인딩, 식 및 제어문 자료형 8

More information

Microsoft PowerPoint - 03-TCP Programming.ppt

Microsoft PowerPoint - 03-TCP Programming.ppt Chapter 3. - Socket in Java - 목차 소켓소개 자바에서의 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 에코프로그램 - EchoServer 에코프로그램 - EchoClient Q/A 1 1 소켓소개 IP,, and Socket 포트 (): 전송계층에서통신을수행하는응용프로그램을찾기위한주소 소켓 (Socket):

More information

징계규정 징계규정 231 징계규정 : 2016. 04. 29. 제 1 조 ( 목적 ). 제 2 조 ( 기본원칙 ) 1. 2. 3. 4. 제 3 조 ( 징계위원회의구성등 ) 1. 2, 5, 2 1.,,. 3,. 4 1 1,,.,. 5. 6 ( ). 7 6. 8. 9,. 232 징계규정 1. 2. 3. ( ) 4. 10. 제 4 조 ( 징계위원회의의결 ) 1

More information

전체설치와사용자지정설치중원하는설치방식을선택합니다. ArcGIS Desktop 설치경로를지정하면설치가짂행됩니다.

전체설치와사용자지정설치중원하는설치방식을선택합니다. ArcGIS Desktop 설치경로를지정하면설치가짂행됩니다. ArcGIS Desktop 10 설치가이드 설치전확인사항 설치하기전에 ArcGIS Desktop 시스템요구사양을 ArcGIS Resource Center을통해확읶하시기바랍니다. (http://resources.arcgis.com/content/arcgisdesktop/10.0/arcgis-desktop-system-requirements) ArcGIS Desktop

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 WINDOWS ADO.NET 환경의 ALTIBASE 개발가이드 2010. 09 Copyright c 2000~2013 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change

More information

슬라이드 1

슬라이드 1 한국산업기술대학교 제 4 강프레임리스너 (Frame Listener) 이대현교수 학습안내 학습목표 프레임리스너를이용하여게임루프를구현하는방법을이해한다. 오우거엔짂의키입력처리방식을이해한다. 학습내용 프레임리스너의개념프레임리스너를이용한게임캐릭터의이동캐릭터의이동속도조절 OIS 입력시스템을이용한키보드입력의처리 기본게임루프 Initialization Game Logic

More information

Microsoft PowerPoint - Lect04.pptx

Microsoft PowerPoint - Lect04.pptx OBJECT ORIENTED PROGRAMMING Object Oriented Programming 이강의록은 Power Java 저자의강의록을사용했거나재편집된것입니다. Class 와 object Class 와객체 클래스의일생 메소드 필드 String Object Class 와객체 3 클래스 클래스의구성 클래스 (l (class): 객체를만드는설계도 클래스로부터만들어지는각각의객체를특별히그클래스의인스턴스

More information

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++,

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++, Level 1은객관식사지선다형으로출제예정 1. 다음은 POST(Post of Sales Terminal) 시스템의한콜레보레이션다이어그램이다. POST 객체의 enteritem(upc, qty) 와 Sale 객체의 makellineitem(spec,qty) 를 Java 또는 C ++, C # 언어로구현하시오. 각메소드구현과관련하여각객체내에필요한선언이있으면선언하시오.

More information

제목을 입력하세요.

제목을 입력하세요. 1. 4 1.1. SQLGate for Oracle? 4 1.2. 4 1.3. 5 1.4. 7 2. SQLGate for Oracle 9 2.1. 9 2.2. 10 2.3. 10 2.4. 13 3. SQLGate for Oracle 15 3.1. Connection 15 Connect 15 Multi Connect 17 Disconnect 18 3.2. Query

More information

Contents Test Lab 홖경... 3 Windows 2008 R2 서버를도메인멤버서버로추가... 4 기존 Windows 2003 AD 홖경에서 Windows 2008 R2 AD 홖경으로업그레이드를위한사젂작업 7 기존 Windows 2003 AD의스키마확장...

Contents Test Lab 홖경... 3 Windows 2008 R2 서버를도메인멤버서버로추가... 4 기존 Windows 2003 AD 홖경에서 Windows 2008 R2 AD 홖경으로업그레이드를위한사젂작업 7 기존 Windows 2003 AD의스키마확장... Active Directory Upgrade from W2K3 to W2K8 R2 5/10/2010 Microsoft Dong Chul Lee Contents Test Lab 홖경... 3 Windows 2008 R2 서버를도메인멤버서버로추가... 4 기존 Windows 2003 AD 홖경에서 Windows 2008 R2 AD 홖경으로업그레이드를위한사젂작업

More information

untitled

untitled - -, (insert) (delete) - - (insert) (delete) (top ) - - (insert) (rear) (delete) (front) A A B top A B C top push(a) push(b) push(c) A B top pop() top A B D push(d) top #define MAX_STACK_SIZE 100 int

More information

12-file.key

12-file.key 11 (String).. java.lang.stringbuffer. s String s = "abcd"; s = s + "e"; a b c d e a b c d e ,., "910359,, " "910359" " " " " (token) (token),, (delimiter). java.util.stringtokenizer String s = "910359,,

More information

슬라이드 1

슬라이드 1 핚국산업기술대학교 제 9 강캐릭터컨트롤러 이대현교수 학습안내 학습목표 씬노드의구성및회전방법을응용하여, 구면카메라및캐릭터컨트롤을구현해본다. 학습내용 구면카메라구현을위한씬노드구성및회전캐릭터컨트롤을위한씬노구구성및회전 카메라및캐릭터컨트롤구현목표 카메라컨트롤 WOW의카메라컨트롤 ( 구면카메라 ) 마우스를이용한좌우패닝, 상하피칭. 휠스크롤을이용한줌인및줌아웃. 캐릭터를중심으로회전됨.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 03 SQL 기초 SQL Server 로배우는데이터베이스개론과실습 오라클로배우는데이터베이스개론과실습 1. SQL 학습을위한준비 2. SQL 개요 3. 데이터조작어 - 검색 4. 데이터정의어 5. 데이터조작어 - 삽입, 수정, 삭제 SQL의개념과주요명령어를알아본다. SELECT 문을이용하여질의를처리하는방법을알아본다. 집계함수와 GROUP BY 문을이용하여질의를처리하는방법을알아본다.

More information