IITA-0157.hwp

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "IITA-0157.hwp"

Transcription

1 제 1장서론 네트워크의발달로정보시스템내의다양한하드웨어, 소프트웨어, 데이타베이스가연결되어상호운용될수있는환경이조성되고있는바사용자들이여러원격지에산재되어있는데이타베이스를지역사이트에있는데이타베이스처럼사용하기를원하는것은성숙해가는정보화사회의당연한귀결이라할수있다. 국가기간전산망에서도다양한플랫폼또는데이타베이스시스템간의데이타호환에대한요구가끊이지않고있다. 국가기간전산망의환경은크게두가지로분류될수있는데, C-ISAM 을사용하는환경과데이타베이스시스템을사용하는환경이다. 각환경하에서데이타호환을위하여표준을제작함은전산망에있는시스템들의효율을향상시키는데필수적이라할수있다. 국가기간전산망의데이타베이스들을연계하기위한표준들이작성되었거나또는작성이진행중이다. 본연구는국가기간전산망에사용되거나사용될표준들을설명하고비교하여국가기간전산망의데이터베이스연계를위한표준들을이해하는데도움이될수있는지침서를작성하는것이목적이다. C-ISAM은세계적으론별로사용되지않고있는화일관리시스템이지만우리나라에서는 주민, 부동산, 자동차 관리 시스템 등에서 사용되고 있어 우리나라의 중요한 정보들이 C-ISAM 에의해관리되고있다. 이러한 C-ISAM 의표준화를위하여이미 주전산기파일 시스템표준 을개발한바있다. 현재행정전산망에서사용되고있는시스템들은운영에있 어서별문제가없다. 그러나이들시스템들이서로데이타를교환해야할경우통신시스 템이기본적으로제공해주는유틸리티를사용하여각사안별로처리되고있다. 그러므로 데이타교환을위하여구현하는방법이각시스템마다다른실정이다. 이는유지보수측면 에서문제점들이도출되는바이를해결하기위해표준화된방법인 원격지데이타베이스 접근: C-ISAM" 을개발하였다. 이방법은 SQL환경에서사용될수있는원격지데이타베이 스접근(Remote Database Access: RDA) 을위한국제표준을 C-ISAM 환경에사용될수 있도록수정하였으며 l995 년에정식표준으로제출될예정이다. -1-

2 국가기간전산망내에서 C-ISAM을쓰지않는환경을데이타베이스시스템환경이라고할수 있다. 데이타베이스의역사를볼때 1960 년대, 1970 년대를계층형데이타베이스, 네트워크 형데이타베이스시대라고한다면 1980 년대를관계형데이타베이스시대라고할수있다. 1980년대가관계형데이타베이스가시작된시기라고한다면 1990년대는관계형데이타베 이스가성숙된시기라고할수있다. 상품화된객체지향데이타베이스가시장에나오기시 작한시기이지만아직시장점유율은아직미비한상태에있다. 관계형데이타베이스시대 에있어그언어의통일은관계형데이타베이스가널리사용되는데막대한역활을하였다. 이러한추세에맞추어 관계형데이타베이스언어표준 을제작한바있다. 국제표준에기 반을두고국내데이타베이스사용자들과제공자들의의견을수렴하여작성하였다. 이러한언어의표준은국가기간전산망에서권해지는규격을정하는것으로이기종데이타베 이스간의연계방법에도영향을미치고있다. 이기종데이타베이스를연계하기위한방법으 로데이타베이스게이트웨이방법이제안되고있다. 국가기간전산망에사용될데이타베이스 게이트웨이표준을작성함에있어서, 기존에작성된 관계형데이타베이스언어표준" 의규 격을참조하였고, 데이타베이스시스템을공급하는업체들의데이타베이스게이트웨이상품 규격들을참조하였다. 이기종데이터베이스간을연계시키는방법은크게두가지로나뉠수 있는데, 클라이언트에서두개이상의서버를접근하여데이타를호환하는방법이첫번째 방법이고, 서버시스템에서다른서버를직접접근하는방법이두번째방법이다. 두가지 방법모두현실적으로가능하나후자는기존프로그램을전부수정해야하고비용이많이 든다는문제가제기되어첫번째방법이표준으로채택되었다. 작성된표준은 데이타베이스 게이트웨이표준 이며 1995 년에표준으로정식제출될예정이다. 앞에서서술한내용을다음에있는그림 1-1 로요약할수있다. C-ISAM을사용하는환경 에서 주전산기파일시스템표준 은 원격지데이타베이스접근: C-ISAM 1) 을작성하는데 사용하였고, 관계형데이타베이스언어표준 은 데이타베이스게이트웨이표준 을작성하 는데이용하였다. 1) 본연구에서는용어사용시편의를위하여약어를사용할수있다. 원격지데이터베이 스접근: C-ISAM" 은 RDA C-ISAM" 으로, 원격지데이터베이스접근: SQL" 은 RDA SQL" 로표기한다. -2-

3 이러한표준들은국가기간전산망의데이타베이스시스템을구매하는데사용한다. 원격지데이타베이스접근: SQL" 은전기통신표준제정이추진중이며. " 원격지데이타베이스접근: C-ISAM 을작성하는데기반을제공한다. 그림1-1 데이터베이스표준구조 -3-

4 제 2 장전산망데이타베이스표준 제 l 절 C-ISAM 본절에서는 1단계행정전산망구축에서데이타를저장하고관리하기위하여채용한주전산기 I의 TX C-ISAM과전산망표준으로제정된 C-ISAM ( 주전산기파일시스템) 표준을분석한다. 1. C-ISAM 개요표준 C-ISAM은색인파일을생성하고관리하는 C 언어함수들을규정한다. 이함수들은다음과같은기능을지원한다. - 파일을생성하고이파일에대한기본색인(primary index) 을생성 - 추가로색인을생성하거나기본색인이아닌다른색인을삭제하는기능 - 생성된파일을열거나닫는기능, 그리고이파일을삭제하는기능 - 디스크에있는데이타베이스에서레코드를읽거나쓸때이용할색인을선택하는기능, 그리고파일의시작위치를알아내는기능 - 데이타레코드를읽고쓰고갱신하는기능 - 파일및레코드에로크(lock) 를잠그거나푸는기능 파일이생성될때, 데이타레코드가들어갈저장공간과기본색인이만들어진다. 프로그래 머는각레코드에서기본키(primary key) 로사용할하나혹은두개이상의필드를명시 할수있는데, 이기본키는파일내에서레코드들을구분하는데사용된다. 하나의레코드 가파일에기록되면이에대한색인엔트리(index entry) 하나가만들어지며, 각색인엔트 리는색인의키값과파일내데이타레코드의위치로구성된다. 이후파일을읽을때는필요 한키의색인을찾고여기에들어있는위치정보를이용함으로써바로데이타레코드를찾아 읽을수있다. 파일에대한접근방법으로는순차(sequential) 방법과직접(random) 방법이 가능하다. 기본색인이외에추가로색인들을만들수있다. 이들색인의키에다른필드들을명시함 으로써같은데이타레코드에대해별개의접근경로(access path) 가지원된다. 하나의파 일에생성될수있는색인의수에대한제한은없다. -4-

5 추가색인에서는서로다른레코드가같은키값을갖는것( 중복, duplicates) 이허용되며, 특정파일에대해서는이를제한할수도있다. C-ISAM에서는기본키에대해중복이허용 된다. C-ISAM 에서는색인키의압축(compression) 에대해서도규정되어있다. 이기능을이용하 면색인에서키저장공간의밀도를높일수가있으며, 여기에사용되는기법으로키의시 작과끝부분에중복되는빈칸(white space) 들을삭제하거나중복되는엔트리들을제거하 는방법등이있다. No compression 및 maximum compression에대해서만완전히정의되 어있다. 그러나특정시스템에대해중간수준의지원이가능하며, 이를위해모드(mode) 값이정의되어있다. X/OPEN의규약을따르는모든시스템에서는응용프로그램의이식성 을위하여이모드값을수용한다. 다만그결과압축의정도는차이가있을수있다. 다수사용자환경에서수정이나접근의신뢰성을보장하기위해파일과레코드에로크를거 는기능이정의되어있다. 파일잠금은파일전체에로크를건다. 여기에는해당파일에접 근하고자하는모든다른트랜잭션의행위가금지되는배타적(exclusive) 형태와다른트랜 잭션의읽기행위는허용되는읽기전용(read-only) 형태가있다. 레코드단위의잠금은자 동으로수행될수있다. 이경우파일을여는시점에이사항이명시되고, 레코드가읽히기 전에자동적으로잠금이이루어지며, 이잠금은그다음함수호출(ISKEEPLOCK 옵션의 isstart 함수는제외) 이성공적으로수행이끝날때까지유지된다. 함수의수행중오류가발 생한경우잠금을해제할지의여부는구현하는사람이결정한다. 수동으로레코드단위의 잠금을수행할수도있는데, 이경우는읽기함수의파라미터에의해동작한다. 2. 표준화현황 C-ISAM에대한표준화활동은필요성이크게대두되지않고있어현재는활발하지않으나, 일부관련업체및기관에서초창기에수행한결과물이존재한다. 그내용을보면, 산업체표준인 X/Open ISAM, 현재주전산기 I에서사용하고있는 TX C-ISAM, 그리고 Informix사에서소유하고있는 ISAM 등이있다. 또한국가기간전산망표준으로제정한 C-ISM 표준이있으며, 이표준은 X/Open의 ISAM, TX C-ISAM, Informix의 ISAM 등을모두고려하여작성하였다. -5-

6 3. 표준화범위 C-ISAM은색인화된순차접근방법으로화일을만들고조작하는 C 언어용함수들의라이브러리로제공된다. TX C-ISAM은 Informix에서개발한 Basic C-ISAM Release3.00을주전산기 I의운영체제인 TX 환경하에서운용되도록수정한것으로, TX에서제공하는여러가지기능이추가되었다. Informix C-ISAM은 X/Open의 C-ISAM표준을그대로수용하고있다. X/Open C-ISAM 의사용자인터페이스라이브러리의정의는다음과같다. - 화일구축 : isbuild, iserase, isrename - 색인관리 : isaddindex, isdelindex, isindexinfo - 화일열기 : isopen, isclose, isstart - 레코드읽기 : isread - 레코드추가 : iswrite, iswrcurr - 레코드변경 : isdelete, isrewrec, isrewcurr - 레코드삭제 : isdelete, isdelrec, isdelcurr - 잠금기능 : islock, isunlock, isrelease 응용프로그래머에게제공되는 C-ISAM 라이브러리함수들을살펴보면다음과같다. 응용프로그래머는화일의접근에관한모든기능을여기에나타난함수를이용하여작성하여야한다. isbuild : TX C-ISAM 화일의구축, 제거및인덱스첨가, 삭제 iserase : 파일삭제 isrename : 화일이름변경 isaddindex : 인덱스추가 isdelindex : 인덱스삭제 isindexinfo : 화일의인덱스정보를가져옴 iststindex : 키의존재여부를조사 isopen : 화일의열기 iscleanup : 열려있는모든화일을닫기 -6-

7 isclose : 화일의닫기 isbegin : 트랜잭션시작 iscommit : 트랜잭션완료 isrollback : 트랜잭션철회 isrecover : 트랜잭션 id로분류되는 logical로그를모아서 roll forward isstart : 현재사용중인 key description을변경하여이후의 isread시에적용될 index와 그의시작위치를선택 isread : 화일에서레코드읽기 읽기모드에따라서다음이지원된다. isfirst : 가장작은 key 값을갖는레코드읽음 islast : 가장큰 key 값을갖는레코드읽음 isequal : 탐색값과일치하는레코드읽음 isgreat : 탐색값보다큰레코드들중제일처음레코드읽음 isgteq : 탐색값과같거나큰레코드들중제일처음레코드읽음 iscurr : 트리포지션에저장중인현재레코드읽음 isprev : 트리포지션에저장중인현재레코드바로전의레코드읽음 isnext : 트리포지션에저장중인현재레코드바로뒤의레코드읽음 iswrite : 화일에레코드를저장하고인덱스재구성트리포지션에있는현행레코드포인 터(treeitem) 를변경시키지않음 iswrcurr : 화일에레코드저장 treeitem이새로추가된레코드를가리킴 isrewrite : 기본키를제외한레코드변경 isrewrec : 주어진레코드번호에해당하는레코드를삭제하고새로운레코드를저장 -7-

8 isrewcurr : 가리킴 현재레코드를주어진새로운레코드로변경 isdelete : 기본키를이용하여레코드를찾아서제거( 인덱스포함) isdelcurr : 현재레코드를제거( 인덱스포함) isdelrec : 주어진레코드번호에해당하는레코드제거 islock : 화일의잠금 isunlock : 화일의잠금을품 isrelease : 화일에대한잠금을해제 isremlock : semaphore 잠금화일삭제 islogopen : 로그화일열기 islogclose : 로그화일닫기 isflush : 화일에관련된모든버퍼를디스크로보냄 isbatch : 변수 batchflag를초기화하고 semaphore 잠금을해제 isaudit : 감사화일에대한정보를얻는다. iscluster : 화일의물리적인순서를키의순서로정렬 isuniqueid : 유일식별자변경 issetunique : 유일식별자를주어진인수값으로지정 ispartition : 큰화일을분할( 화일이름자동) ispartname : 큰화일을분할( 화일이름사용자지정) ispartinfo : 분할화일에대한정보얻음 treeitem이새로변경된레코드를 기본적으로화일을관리하기위한데이타구조로는디스크의데이타를읽고쓰는데좋은성능을내는 B+ 트리구조를이용하고있다. 그리고화일을열고닫는기능, 레코드를읽거나 쓰고변경하는기능이지원되며, 잠금기능, 트랜잭션기능이지원된다. -8-

9 제 2절 RDA C-ISAM 표준 본절에서는 원격지데이타베이스접근 : C-ISAM 표준( 안) 을요약하며, 정리하였다. 본절은모델, 서비스, 규약, 응용- 문맥순으로구성되어있다. 1. 모델가. 서비스일반모델 RDA 클라이언트에서는데이타베이스자원을개방함으로써 RDA 서버에있는 C-ISM 데이타자원을접근한다. 그런다음, 데이타언어서비스에대한요청으로사용이가능하다. RDA C-ISAM 특수표준에서는 Nested C-ISAM 데이타자원을지원하지않는다. C-ISAM의데이타자원을폐쇄하면 RDA 클라이언트는이에대한접근이불가능하다. 즉, 데이타언어서비스요청에대한후속사용이불가능하다. 구현자는 RDA 서버에서하나혹은여러개의 C-ISAM 데이타자원을사용할수있도록구현해야한다. 나. 데이타언어개념 C-ISAM 과같은화일시스템의경우화일을생성/ 삭제하는데이타질의어는 RDA에서제외 하고데이타를조작하는 C-ISAM 호출을중심으로구성한다. RDA C-ISAM 특수표준에서는저장실행의의미가없다. 왜냐하면, C-ISAM의경우다른 데이타베이스언어와는달리문장하나만으로는의미단위를형성할수없다. 따라서원하는 일을수행할수있는의미단위를구성하기위해서는, 다수의 C-ISAM 함수를이용하여프 로시쥬어를구성하고, 그프로시쥬어를호출해야한다. 그러나 RDA 일반표준에는프로시쥬 어호출기능이없기때문에, 의미단위를형성할수없게되고, 따라서저장실행은무의미해 진다. C-ISAM 데이타베이스를접근하는 RDA 의실행구조를보면다음 < 그림 2-1> 과같 다. -9-

10 그림 2-1. C-ISAM을접근하는 RDA의실행구조 2. 서비스가.RDAC-ISAM특수표준서비스 1) R-Initialize 서비스신규 RDA 대화설정을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 ISInitializeArgument : RDA 클라이언트가원하는레벨을정의한다. ISConfomanceLevelDefault : 클라이언트에서정의한 C-ISM 레벨을정의한다. userdata : RDA 서버구축자가정의하여사용한다. ㆍ결과매개변수 ISInitializeResult : RDA 서버에서반환되는정보를정의한다. userdata : RDA 서버구축자가정의하여사용한다. 2) R-Open 서비스현재개방된대화에서사용하고자하는데이타자원의취득을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 ISAccessControlData : C-ISAM 데이타개방권한을검증하는매개변수이다. ISUsageMode : 지정된 C-ISAM 데이타자원으로의접근모드를나타낸다. 로크모드와접근모드및트랜잭션모드로구성되며이들을조합하여사용한다. -10-

11 ISLockMode : C-ISAM 데이타( 화일및레코드) 의로크상태를나타낸다. ISAccessMode : 개방하고자아는데이타( 화일) 의입출력형태를나타낸다. ISTransMode : C-ISAM 에서제공하는트랜잭션처리기능을정의한다. ISOpenArgument : 클라이언트에의하여요구되는정보를정의한다. charset : 코드화된문자집합을정의한다. ISConformanceLevel : 클라이언트에서표현한 C-ISAM 의특성을정의한다. ISDiagnosticsRequested : 클라이언트에서요구하는진단정보를서술한다. ㆍ결과매개변수 ISOpenResult : 서버에의하여반환되는정보를정의한다. charset : 코드화된문자집합을정의한다. ISConformanceLevel : 클라이언트에서표현한 C-ISAM 의특성을정의한다. charsetnotsupported : 클라이언트에의하여선언된문자집합이 RDA 서버에서의지원을 정의한다. ㆍ오류변수 ISOpenError : RDA 서버에서오류를알리기위해정의한다. invalidisconformancelevel : ISConformanceLevel 값이허락되지않았다. rdatransactionopen : C-ISAM 데이타베이스자원개방이허락되지않는다. ISAccessControlViolation : 클라이언트는요청한 C-ISAM 데이타를개방할권한이없다. ISDataResourceAlreadyOpen : 접근하고자하는 C-ISAM 데이타는이미사용중이다. ISDatabaseTooManyOpen : 개방할수있는 C-ISAM 데이타자원의최대수를초과하였다. 3) R-Close 서비스데이타자원의사용을종료하는서비스로서다음과같은매개변수를정의한다. ㆍ오류변수 ISCloseError : 서버에서오류를알리기위해사용한다. -11-

12 rdatransactionopen : C-ISAM 데이타자원의폐쇄가허락되지않는다. 4) R-Execute DBL 서비스클라이언트가데이타베이스서버에게하나의데이타베이스문장의즉시수행을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 ISDBLStatement : 서버에서수행될 RDA C-ISAM 문을나타낸다. ISDBLArgumentSpecification : C-ISAM 데이타타입의서술목록을' 정의한다. ISDBLResultSpecification : 결과에대한 C-ISAM 데이타타입의서술목록을정의한다. dblarguments : ISDBLStatement 의수행횟수를정의한다. singleargument : ISDBLStatement의수행을 ISDBLArgumentValues를이용하여 repetitioncount 만큼수행할것을정의한다. ISDBLArgumentValues : ISDBLArgumentSpecification에정의된인수매개변수값의목록을정의한다. multipleargument : ISDBLStatement를 n개의 listofisdblargumentvalues를이용하여 repetitioncount 만큼수행할것을정의한다. listofisdblargumentvalues : ISDBLArgumentSpecification에정의된다수의인수매개변수값의목록을정의한다. returnisdiagnostics : 클라이언트의진단정보요청을정의한다. ㆍ결과매개변수 ISDBLResultSpecification : C-ISAM 데이타타입서술자의목록을정의한다. listofresultvalues : 클라이언트에서요청한각 DBL 명령어의수행결과를정의한다. ISDBLException : RDA C-ISAM 문의실행에대한완성코드를정의한다. ISSTATE : KIS : 1994( 주전산기파일시스템표준) 에서정의한코드값을나타낸다. ISCODE : 이매개변수는명세에정의한코드값을나타낸다. ISErrorText : ISSTATE 값에대응하는경고및오류를정의한다. -12-

13 ISDiagnostics : 클라이언트에서요청한진단정보를결과로반환한다. ISDBLResultValues : ISDBLResultSpecification에서정의된결과매개변수들의값의목록을정의한다. ㆍ오류매개변수 ISExecuteDBLError : RDA 서버에서오류를알리기위하여사용된다. hostidentifiererror : Host Identifier 지정의잘못을정의한다. rdatransactionnotopen : 트랜잭션을개방하지않고, RDA C-ISAM문을포함하는연산을 수행하려했다. ISDBLArgumentCountMismatch : ISDBLArgumentValues의 개체수와 ISDBLArgument Specification 개체수가동일하지않다. ISDBLArgumentTypeMismatch : ISDBLArgumentValues의 개체 타입 한개 이상과 ISDBLArgumentSpecification 개체타입이동일하지않다. ISDBLNoCharSet : C-ISAM 데이타자원에대한문자집합이없다. ISDBLStatementNotAllowed : ISDBLStatement의내용이 RDA C-ISAM 특수표준에정의 되지않은 C-ISAM 문이다. ISUsageModeViolation : C-ISAM 데이타베이스자원의요청에대한사용모드가서술된 RDA C-ISAM 문의규칙과일치하지않는다. 나. 명령문, 인수, 결과 1) ISDBLStatement statementtext : C-ISAM 문을갖는코드화된문장이다. charset : 코드화된문자집합의명세를정의한다. 2) ISDBLArgumentSpecification과 ISDBLResultSpecification ListOfISDataTypeDescriptor : 각항목은 ISDBLStatement내의개별적인입출력의발생을 정의한다. nullable : 서버에서반환하는결과목록의공백을정의한다. colname : 결과 Column 의이름을서술한다. TypeDescriptor : 대응되는항목에대한데이타타입을정의한다. -13-

14 charactertype : C-ISAM 문에서문자데이타항목을정의한다. charset : 코드화된문자집합을정의한다. length : 문자데이타항목에대한문자의최대수를정의한다. HcharacterType : C-ISAM 문에서한글문자데이타항목을정의한다. charset : 코드화된한글문자집합을정의한다. length : 문자데이타항목에대한문자의최대수를정의한다. decimaltype : 기계무관한십진데이타항목을정의한다. precision : 전송되는값을표현하는데필요한십진베이스의숫자의갯수를정의한다. scale : decimaltype 에서비음수정수를정의한다. integertype : 부호를갖는 2 바이트이진정수데이타를정의한다. precision : precisionbase 매개변수에서정의한베이스(Base) 를사용해숫자의갯수를서술한다. precisionbase : 사용되는숫자의베이스(Base) 를서술한다. longtype : 부호를갖는 4 바이트이진정수데이타를정의한다. precision : precisionbase 매개변수에서정의한베이스(Base) 를사용해숫자의갯수를서술한다. precisionbase : 사용되는숫자의베이스(Base) 를서술한다. floattype : C-ISM 의부동소수점데이타항목을서술한다. mantissaprecision : 가수(Mantissa) 에서유효이진수갯수를서술하는양의정수를정의한다. maxexponent : 지수의최대절대값을서술하는비음수정수를정의한다. doubletype : 배정도부동소수점데이타항목을정의한다. mantissaprecision : 가수(Mantissa) 에서유효이진수갯수를서술하는양의정수를정의한다. maxexponent : 지수의최대절대값을서술하는비음수정수를정의한다. 3) ISDBLArgumentValues와 ISDBLResultValues listofisvalue : C-ISAM 문에서의개별적인 <Variable Specification> 값을갖는항목을정의한다. -14-

15 dataitem : Data Variable 값을정의한다. characteritem : 문자 Data Variable 값을정의한다. HcharacterItem : 한글문자 Data Variable 값을정의한다. decimalitem : 십진 Data Variable 값을정의한다. integeritem : 2 바이트이진정수Data Variable 값을정의한다. longitem : 4 바이트이진경수Data Variable 값을정의한다. floatitem : 부동소수점 Data Variable 값을정의한다. doubleitem : 배정도부동소수점 Data Variable 값을정의한다. indicator : <indicator variable> 값을정의한다. 다. 순차규칙 RDA C-ISAM 에서는서버에대한순차규칙은정의하지않으나, 클라이언트에대한순차규칙은다음과같이정의한다. ISO/IEC (RDA 일반표준) 에정의된순차규칙에추가하여다음과같은순차규칙을적용한다. a) 만일 RDA 클라이언트가 C-ISAM 데이타베이스자원을성공적으로개방할경우에는, RDA 클라이언트는 RDA 대화에서다른 R-Open 요청을발생하기전에, RDA C-ISAM 데이타베이스자원을폐쇄하여야한다. b) 만일 RDA 클라이언트가 RDA C-ISAM 문의실행을요청한다면, RDA 대화에 RDA트랜잭션의개방이있어야한다. 3. 규약 가. 서버실행규칙 1) 대화-상태모델가)RDA대화개체 ISConformanceLevelDefault: RDA 대화문맥에서사용될수있는 DBL문에대한 C-ISAM 표준을식별하기위하여사용된다. userdata : 속성은 RDA 서버구현자에의하여정의된다. -15-

16 나) 개방된데이타자원개체 ISConformanceLevel: RDA 대화문맥에서사용될수있는 DBL문에대한 C-ISAM 표준을 식별하기위하여사용된다. ISLockMode: C-ISAM 데이타자원의로크를정의한다. ISEXCLLOCK: C-ISAM 데이타자원( 파일) 을배타적으로로크한다. ISMANULOCK: C-ISAM 데이타자원( 파일및레코드) 을수동으로로크한다. ISAUTOLOCK: C-ISAM 데이타자원( 레코드) 을자동으로로크한다. ISAccessMode: 개방하는데이타자원의입출력모드를나타낸다. ISINPUT: C-ISAM 데이타자원( 파일) 을입력모드로개방한다. ISOUTPUT: C-ISAM 데이타자원( 파일) 을출력모드로개방한다. ISINOUT: C-ISAM 데이타자원( 파일) 을입출력모드로개방한다. ISTransMode: C-ISAM에서제공하는두가지트랜잭션처리기능을정의한다 ISOCONTROL: TX 커널에서제공하는, 로크를이용하여트랜잭션을처리한다. ISTRANS: C-ISAM 에서기본적으로제공되는기능으로트랜잭션을처리한다. ISDiagnosticsRequested: 클라이언트에서요청하는진단정보요구를서술한다. always: R-ExecuteDBL 결과에진단정보가항상포함될것을나타낸다. onrequest: 요구가있을경우에만 R-ExecuteDBL의실행결과에진단정보가포함될것을 나타낸다. never: 진단정보가포함되지않는것을나타낸다. clientdefcharset: 클라이언트에서사용가능한 default 문자집합을서술한다. serverdefcharset: 서버에서사용되는 default 문자집합을서술한다. 다) 정의된 DBL 개체 ISDBLArgumentSpecification: RDA C-ISAM문인수의 C-ISAM 데이타타입이다. ISDBLResultSpecification: RDA C-ISAM문의결과의 C-ISAM 데이터타입이다. ISDBLStatement: RDA에서정의된 C-ISAM 문이다. 2) R-Initialize ㆍ개체조작규칙 서비스 ISConformanceLevelDefault: R-Initialize 지시프리미티브에서정의한값이다. -16-

17 userdata: RDA 서버에의해처리되는 userdata 속성값이다. ㆍ결과규칙 userdata: 대화개체에서처리된 userdata 속성값이다. 3) R-Open 서비스 ㆍ개체조작규칙 다음은개방된데이타자원개체에관하여추가된속성들의초기값에대한제한을정의한 다. ISConformanceLevel: R-Open 지시프리미티브, C-ISM 의레벨을식별한다. ISDiagnosticsRequested: R-Open 지시프리미티브의 ISDiagnosticsRequested 매개변수 값혹은 default 값인 never 를갖는다. ISLockMode: 배타적로크인 ISEXCLLOCK, 수동적로크인 ISMANULOCK, 자동적로크인 ISAUTOLOCK 을갖는다. ISAccessMode: 사용하고자하는용도에따라입력모드(ISINPUT), 출력모드(OUTPUT), 입출력모드(ISINOUT) 중하나를갖는다. ISTransMode: 트랜잭션사용을전제로한 ISOCONTROL 모드와일괄업무처리시단일사 용자환경을제공하는 ISEXCLLOCK 모드중하나를갖는다. clientdefcharset: 초기값은 R-Open 지시프리미티브에서제공하는 charset 혹은 null" 이 다. serverdefcharset: 매개변수의값에의하여식별되는문자집합결과, 혹은문자집합을식 별하는객체식별자, 혹은 null" 을갖는다. ㆍ결과규칙 다음은어떤결과가반환될때, 그결과매개변수의제한들을정의한다. ISConformanceLevel: 개방된자원개체에서의속성값, 혹은개방된자원개체에서의속성 값, 혹은생략된다. charsetnotsupported: RDA 서버에서 charset 매개변수에의해식별된문자집합을제공할 수없으면 true 이고, 그렇지않으면 false 이다. charset: RDA dialogueid 속성이현재 RDA 대화를식별하면 dataresourcehandle은속 성값이다. -17-

18 ㆍ오류규칙 invalidisconformancelevel: ISConformanceLevel 매개변수의값이 C-ISAM 전산망표준 객체식별자중하나로확인하지않았다. rdatransactionopen: 대화개체의 rdatransactionstatus 속성이 rdatransactionopen 값을갖는다. ISAccessControlViolation: R-Open 지시프리미티브의 ISAccessControlData 매개변수는 RDA 클라이언트에게권한을주지못한다. ISDataResourceAlreadyOpen: 접근하고자하는데이타자원이사용중이다. ISDatabaseTooManyOpen: 개방하고자하는데이타자원이시스템에서허용하는최대치를 초과하였다. 4) Close 서비스 ㆍ오류규칙 rdatransactionopen: RDA 대화개체의 rdatransactionstatus이 rdatransaction-open 값을가지고있다. 5) R-ExecuteDBL 서비스 ㆍ개체조작규칙 RDA SQL 특수표준및 C-ISAM 은없다. 특수표준에서개체조작규칙에대하여추가되는요구사항 ㆍ결과규칙다음은어떤결과가반환될때, 그결과매개변수의제한들을정의한다. charset: listofisdatadestriptor 의대응되는객체식별자가동반된다. ISDBLException: 개방된데이타자원개체의 ISDiagnosticsRequested에따라서버에의해 ISDiagnostics 를반환한다. colname: ISDBLResultSpecification의부분인 listofisdatadescriptor를각항목에서서술한다. < 표 2-1> 에는 C-ISAM 인수와결과매개변수를사용하는 R-ExecuteDBL 을정의한다. -18-

19 < 표 2-1> C-ISAM 인수와결과매개변수를사용하는 R-ExecuteDBL C-ISAM 인수와결과매개변수를사용하는 R-ExecuteDBL 실행될 RDA C-ISAM문 ArgSpec ArgVal ResSpec ResVal isabortcleanup isaddindex C->S (H) C->S (H) isaudit C->S (H) C->S (H) isbegin isbuild C->S (H) C->S (H) C<-S (H) C<-S (H) isclose C->S (H) C->S (H) iscluster C->S (H) C->S (H) C<-S (H) C<-S (H) iscommit isdelcurr C->S (H) C->S (H) isdelete C->S (H) C->S (H) isdelindex C->S (H) C->S (H) isdelrec C->S (H) C->S (H) iserase C->S (H) C->S (H) isextents isflush C->S (H) C->S (H) isindexinfo C->S (H) C->S (H) islock C->S (H) C->S (H) islogclose islogopen C->S (H) C->S (H) isopen C->S (H) C->S (H) C<-S (H) C<-S (H) ispartinfo ispartition C->S (H) C->S (H) ispartname isread C->S (H) C->S (H) isrecover isrelease C->S (H) C->S (H) isrename C->S (H) C->S (H) isrewcurr C->S (H) C->S (H) isrewrec C->S (H) C->S (H) isrewrite C->S (H) C->S (H) isrollback issetunique C->S (H) C->S (H) isstart C->S (H) C->S (H) isuniqueid C->S (H) C->S (H) isunlock C->S (H) C->S (H) -19-

20 iswrcurr C->S (H) C->S (H) iswrite C->S (H) C->S (H) 범례 ArgSpec ArgVal ResSpec ResVal C->S C<-S ISDBLArgumentSpecification 매개변수 ISDBLArgumentValues 매개변수 ISDBLResultSpecification 매개변수 ISDBLResultValues 매개변수 RDA 클라이언트에서제공하는매개변수 RDA 서버에서반환되는매개변수 (H) RDA C-ISAM문에서호스트변수를포함하면 RDA 클라이언트는 blank 이매개변수를설정한다. 서술하지않음 ㆍ오류규칙 hostidentifiererror: Host Identifier 의지정이잘못되었다. rdatransactionnotopen: rdatransactionstatus 속성은을갖는다. rdatransactionnotopen의값 ISDBLArgumentCountMismatch: listofisvalue의항목수와 1istOfISDataType-Descriptor 의항목수가동일하지않다. ISDBLArgumentTypeMismatch: listofisvalue의항목에대한타입이 1istOfIS-DataTypeDescriptor 에대응되는항목과같지않다. ISDBLNoCharSet: ISDBLArgumentSpecification 혹은 ISDBLResultSpecification 은문자집합에대한명확한명세없이문자데이타에대한서술자를포함하거나, ISDBLStatement 는문자집합의명확한서술을갖지않는다. ISDBLStatementNotAllowed: RDA 클라이언트가 RDA C-ISAM 문을실행시켰으나, RDA C-ISAM 특수표준에서적합하지않아되지않는다. ISUsageModeViolation: dataresourcehandle 에의해정의된개방된데이터자원개체의 ISUsageMode 속성에사용된모드의조합이부적절하다. -20-

21 나. 적합성 본절은 RDA C-ISAM 특수표준에대한적합성요구사항을정의한다. " 클라이언트역할" 이 란용어는 RDA 요청을시작하는능력을의미하고, " 서버의역할" 이란용어는그러한 RDA 요청에응답하는능력을의미한다. 본표준의적합성을주장하는구현은다음을준수하여야 한다. ㆍISO/IEC : 1993에서술한 RDA 일반모델, 서비스, 규약서버실행규칙과상태테 이블에대한적합성은 RDA APDU의순서와 RDA APDU의내용에미치는이들의영향에 대해서만시험된다. 1) 정적적합성본표준의적합성을주장하는구현은다음을제공하여야한다. ㆍ클라이언트의역할, 서버의역할, 또는이둘의역할ㆍ 데이타베이스언어서비스 에명시된기능단위 2) 동적적합성본표준의적합성을주장하는구현은다음과같은외부동작을보여야한다. ㆍ서버역할을제공한다면, 데이타베이스언어인 C-ISAM 문을실행할수있는접근(RDA에대한적합성주장은 C-ISAM 에대한적합성주장과별개이다.) ㆍ서버역할을제공한다면, "RDA C-ISAM 특수표준 에명시된 RDA 서버실행규칙ㆍRDA C-ISM APDU 의구조및코드화에명시돤규약-데이타-단위에대한구조및코드화 4. 응용-문맥 RDA C-ISAM에서는 TP 응용-문맥을정의하지않고기본응용- 문맥만을정의한다. 가. 기본응용-문맥객체식별자본절은 ANS.1 객체식별자값인 {C-ISAM standard rda part-1(1) basic-ac(l)version-l(1)} 과 객체 서술자 값인 RDA-C-ISAM-BAS1C-APPL-CONTEXT-V1 을 RDA C-ISAM 기본응용-문맥으로할 당한다. -21-

22 나. 적합성요구사항본절은 RDA C-ISAM 특수표준의기본응용-문맥에대하여추가적인적합성요구사항을정의한다. RDA C-ISAM 에서는동적적합성을정의하지않고정적적합성만을정의한다. 국제표준의정적적합성에 C-ISAM 특수표준부분의기본응용-문맥에대하여적합성을요구하는구현은다음과같은기능을제공해야한다. ㆍRDA 트랜잭션관리기능단위 -22-

23 제 3절 KSQL1 1. KSQLI 의개요 SQL(Structured Query Language) 은관계형데이타베이스시스렘의데이타베이스언어국제표준으로서, 관계형데이타베이스시스템인 System R의데이타베이스언어인 SEQUEL(Structured English QUEry Language) 로부터발전했다. SQL에대한최초의표준화작업은 ANSI(American National Standard Institute) 에의해수행되었고, ISO(International Standard Organization) 에의해 1987년에국제표준 ISO IS9075:1987 로채택되었다. 그후데이타베이스응용분야의확장에따라사용자의요구사항을만족시킬수있도록 ISO IS 9075:1987 에기본적인참조무결성(referentialintegrity) 에대한내용을추가시켜 ISO IS 9075:1989 가완성되었다. 이것이우리가흔히 SQLl이라부르는것이다. 그후 SQL1에대한확장이계속진행되어 1991년 4월에 SQL2의 DIS(Draft International Standard) 판이만들어졌고, 각국가대표들의투표를거쳐국제표준인 ISO IS 9075:1992 가최근에제정되었다. 그리고다른한편으로, 더욱새로운데이타베이스기술을수용할수있는데이타베이스언어를만들고자객체지향개념등을수용할수있는 SQL3에대한표준화작업이계속이루어지고있어 1995 년에표준안이확정될예정이다. 현재진행중인 SQL3의객체지향개념을기념을기반으로하여특정응용에적합한데이타베이스언어기능을표준화하는새로운항목이제안되었으며, 이를지원하는언어를 SQL/MM(SQL Multimedia and applicationpackages) 으로명명하였다. 위에서살펴본것처럼최근몇년사이관계데이타베이스관리시스템 (Relational Database Management System) 의데이타베이스언어로서 SQL은매우빠른속도로국제표준으로정착되고있다. 이런상황에서우리나라의실정을살펴보면, 1989년에공업진흥청에서 ISO IS9075:1987에기반을두어 KS(Korean Standard) 를만들기위해표준안연구를수행하여, 1990 년에 데이타베이스언어 SQL(KSC )" 를제정하였고같은해에 SQL 의키워드를한글화한 " 한글관계형데이터베이스언어(HSQL)(KSC )" 를표준화하였다. 그러나, KSC 은현재 SQL2 가세계표준으로제정된상황에서볼때, 이미효용성이없는구표준이며, 더우기 ISO IS 9075:1989가 ISO IS 9075:1987을대체한상황에서과거표준을기반으로했다는문제점을가지고있다. -23-

24 또한 HSQL(KSC ) 에서는키워드만을한글화하였고, 실제이표준을따르는어떤한글관계 DBMS 상품도없다는점을볼때, 사장된표준이라고생각된다. 근래의소프트웨어개발환경에있어서데이타베이스시스템의역할은각시스템간의상호데이타를공유하게하고통합하는가장기본적인시스템소프트웨어로서자리를굳히고있으며, 더우기각기간분야의전산망을구축하여정보및컴퓨터자원의효율적인공유를목적으로하고있는국가기간전산망사업에서의데이타베이스시스템은각기관의데이타를유지관리하고공유하게하여정보자원을효율적으로활용하게하는중요한역할을담당하고있다. 이와같은데이타베이스시스템의중요성을고려해볼때, 국내상황을반영하는적절한데이타베이스언어의표준이제시되지않으면여러가지형태의 DBMS가난립하여데이타의공유, 통합및시스템간의상호연동성을더욱어렵게만들위기에처해져있다. 따라서, 본연구는앞으로국가기간전산망및국내기타전산망에주요하게사용될관계형데이타베이스관리시스템의환경에적합한데이타베이스언어의고려사항을파악하여이를반영하며, ISO의국제표준을준수하는수준의국내데이타베이스언어표준안을개발하는것을그목적으로하고있다. 2. 표준화현황본표준에서는국내데이타베이스언어표준( 가칭 KSQL1) 을개발하는데있어서다음과같은방향을설정하였고, 이를표준안에반영하였다. 첫째,KSQL1은가급적국제표준인 ISO 표준을준수하도록하였다. 둘째, 현재상용관계 DBMS는기본적으로 ISO SQLl(9075:1989) 을거의만족한다. 만약 SQL1 을기반으로하게된다면, SQLl에정의된기능이현재상용화되어있는관계 DBMS 제품들이제공하는기능에비해너무빈약하기때문에제품마다추가로제공되는기능이다양해질것이며이기능들을사용하는응용프로그램들의호환성에문제가있게된다. 또한 SQL1에는많은오류가있음이 SQL2 작업중에밝혀져, SQL2 에이를개선하였다. -24-

25 셋째, KSQL1은 ISO 9075:1992 를기반으로한다. ISO 9075:1992는기능들을 3 레벨로 구분한다. 레벨 1은데이타베이스시스템이갖추어야할가장기본적인기능만표준으로제 안한다. 레벨 2는일반적으로데이타베이스시스템이사용하는많은기능들을표준으로정 의한다. 레벨 3는분산환경및서로다른문자를사용하는데이타베이스시스템간에필요 한기능들을표준으로정의한다. 넷째, 현재 SQL2 레벨 3의기능을모두만족하는 DBMS 제품은전세계에하나도없다. 또 한레벨 2의기능에있어서는 SQL2가 1992년에제정되었으므로각상용 DBMS는현재 레벨 2 기능에대해각기상이한형식을제공하고있다. 따라서 KSQL1은 SQL2 레벨 1에 기반을두고, 레벨 2 에서필요한기능은적극수용하였다. 그러나, 앞에서언급했듯이레벨 1은가장기본적인기능만표준으로제정하고있고현재응용환경에서사용되고있는기 능들은이보다훨씬많다. 사용자의요구가더높고제정된표준안이이요구를만족시키지 못하면, 그기능들을지원하기위해각 DBMS마다별도의 specification 을사용할것이다. 이는응용프로그램의호환성문제발생과함께 DBMS 개발자에게는 specification 만드는 데추가적인노력을요구한다. 다섯째, KSQL1 표준은그대상을국가기간전산망을포함하는국내전산망에서운영되는 데이타베이스시스템에적용시키는것을목표로한다. 따라서, 국내전산망사용자들의요구 사항수용및각전산망응용시스템들사이의호환성의확보가가장시급한문제이다. 특히 여기서중요한것은국제표준을그대로수용하는것도중요하지만이표준이적용될대상 에대한고려가중요하다. KSQL1 은국가표준이아닌정부표준이다. 미국의 FIPS나캐나 다와같은경우에도국제표준중반드시필요한부분을정부표준으로만들어정부관련기 관이 DBMS 를도입할때이를따르도록하고있다. 여섯째, 특정 DBMS의독점을없애고경쟁을유발시켜 DBMS 시장을확대시켜국내산업 발전및기술개발을유도한다. 일곱째,KSQL1 에서고려한전산망에서의사용자요구사항은다음과같다. 한글지원 : ISO의 SQL1에는 ASCII 문자만고려하고다른문자집합에대한고려가없 었으므로, 설령어떤 DBMS가 SQL1의표준을만족한다고하더라도데이타베이스시스템 개발자에따라한글을지원하는방법이상이하였다. -25-

26 따라서 KSQL1 에서는한글데이타, 한글리터럴, 한글식별자등의지원및처리방안에대하여통일성을기하도록하기위해문자집합에 KS5601 ( 한글, 한자) 를첨가확장하였고, 한글, 영문모두문자개념을지원하도록하였다. 스키마관리기능지원 : 하나의 DBMS에는여러종류의응용시스템들이존재할수있으며, 이들을각각지원하는스키마의관리기능이필요하다. 이를위해스키마의생성은물론삭제, 변경기능들을지원하는것은필수적이다. 다양한트랜잭션처리기능 : 전산망에서사용할주전산기의개발목표중가장큰하나는 OLTP(On-line Transaction Processing) 기능의효율적지원이다. 또한각응용의성격에따라다양한형태의트랜잭션처리기능을제공함으로써시스템의효율성을제고하는것이필수적이다. 동적데이타베이스언어의사용 : 관계 DBMS의대부분의응용은성능을위하여미리컴파일되어수행하는것이대부분이나, 대화식질의유틸리티나데이타베이스디자인도구등의범용응용시스템을개발할때는실행시에사용될 SQL문이결정되는것이바람직하다. 이런기능을지원하는것을동적 SQL 언어라하며, 특히여러형태의사용자인터페이스를개발, 제공하는데이기능은필수적이다. 오류관리기능의향상 : 사용자가오류발생의원인에대한자세한설명을제공받을수있다면응용시스템개발에매우용이할것이다. 또한일반사용자에게친숙하도록한글오류메세지가제공되어야하는데, 현재한글화된영문 DBMS에는자세한오류메세지기능도없을뿐더러그메세지형태도통일되어있지않다. 3. 표준범위 KSQL1의표준화범위는 ISO SQL2의레벨 1 을기반으로하고, 앞의표준화방향에서언급한바와같은필요한몇가지기능을추가하였다. SQL의문장별로정의한 KSQL1의표 준화범위는뒤에서술되어있는 < 표 2-2> 과같다. -26-

27 < 표 2-2> 에는 ISO SQL2의각레벨별표준화범위및 X/Open의표준화범위와 KSQL1의 표준화범위를비교해놓았다.< 표 2-2> 을구체적으로살펴보면다음과같다. 첫째, 스키마정의어의경우 ISO SQL2의레벨 l 은스키마, 테이블, 뷰의정의와권한을부 여하는기능만을제공한다. 이에비해 SQL2의레벨 2에서는도메인정의와문자집합정의 기능을추가하였다. 새로운객체개념인도메인은허용가능한값들의집합으로데이타베이 스에저장가능한유효한값들을제한할수있으며, 스키마로정의되는것이다. 도메인과 문자집합정의기능을추가한레벨 2에정의한문자집합에대한대조순서를결정하는 collation 정의와문자집합간의변환규칙정의도추가한것이 SQL2의레벨 3의표준화 범위이다. 한편, X/Open 표준안에서는테이블정의와뷰정의기능과권한부여기능만을 가지고있을뿐스키마정의기능이제외되어있다. KSQL1에서는 SQL2의레벨 1을그대 로수용하였다. 둘째, 스키마처리어는 SQL2의레벨 1을제외하고는각표준에서모두제공되고있는것으 로 SQL2의레벨 2, 레벨 3와 X/Open은스키마정의어에서정의했던개념들에대한삭제 및취소기능을가졌고, X/Open 의경우만스키마삭제기능이제외되어있다. SQL2의레벨 3 는그외에도메인갱신에대한기능이추가되어있다. 스키마관리어는레벨 2에서지원하는기능이지만일반적으로스키마정의어에의해생성 된객체들에대한삭제, 변경기능은필수적이다. 표준안이없는경우이기능들을수행하 기위한도구들을각자나름대로다양한방법으로지원할것이므로이를통일할필요성이 있다. 따라서, KSQL1 에서는스키마정의어에정한범위문장에맞추어, 정의되었던스키마, 테이 블, 뷰, 권한의삭제및취소를포함하고, 테이블구조의갱신을지원하도록표준범위를정 하였다. 셋째, 자료처리어는 SQL2의레벨 3 를제외하고각표준의표준화범위가같다. 자료처리 어는데이타베이스의자료를처리하기위해정의한문으로서검색, 추가, 삭제, 갱신하는명 령어로구성되어있고, SQL2의레벨 3에서추가되는기능은국지임시테이블을정의하는 DECLARE LOCAL TEMPORARY 문이다. 국지임시테이블은테이블이정의되는시점에 실제물리적인테이블을만드는것이아니고, SQL 세션내에서테이블을참조하는모듈마다 별개의실제테이블이만들어지며,SQL 세션이끝날때만들어진실제테이블은없어진다. -27-

28 국지임시테이블에들어있는자료는같은 SQL 세션내의모듈간에도공유가불가능하다. KSQL1에서는 SQL2의레벨 1 을그대로수용하였다. 넷째, 트랜잭션관리어는 SQL2의레벨 1과 X/Open 표준안은트랜잭션의종료와취소기능 만을제공하는데에반해서 SQL2의레벨 2는종료와취소기능외에트랜잭션의속성을정 의할수있도록 SET TRANSACTION 을추가하였다. 그리고, 레벨 3에서는트랜잭션의제 약조건모드에대한정의를추가하였다. KSQL1에서는 주전산기의 공동 시스템들의 주요한 요구 조건이 OLTP(On-Line Transaction Processing) 이므로, 이를효율적으로지원하기위해 SQL2의레벨 2를수용하 였다. SET TRANSACTION 문이란자료를검색시트랜잭션간에미치는영향의정도즉, isolation 레벨을여러단계로나누어사용자가선택할수있도록하는문이다. 즉, 트랜잭 션들의동시수행정도를결정하는인자가된다. 이는응용환경의특성에따라필요한경 우자료의일치성을일부포기하고라도동시성을높일수있도록허용한다. 예를들어, 통 계정보를처리하는응용이라면모든자료가꼭정확히, 일치해야하는것이아니므로이때 는가장낮은 isolation 레벨을사용하여일을처리하고동시에다른트랜잭션도수행할수 있게할수있다. 반대로주민등록업무나은행온라인시스템과같은응용업무에서는모든 자료의일치성이반드시보장되어야하므로가장늪은 isolation 레벨을사용하여정확한 자료처리를할수있다. 다섯째, 특정 SQL 환경( 같은장소또는다른장소에존재) 과의연결또는단절을관리하 는연결관리기능은 SQL2의레벨 3와 X/Open 에서만지원한다. 여섯째, 세션관리어는한사용자와특정 SQL 환경간의연결이설정된상태를말하는 SQL 세션내에서기본으로사용할수행환경을관리하는기능을정의하며 SQL2의레벨 2와레 벨 3 에서지원하며, 레벨 3는레벨 2에비해현 SQL 환경내의디폴트카탈로그명과디폴 트스키마명정의를추가하고, 식별자와문자열리터렬을위한디폴트문자집합명정의를 추가하였다.KSQL1 에서는이를지원하지않는다. 일곱째, 동적 SQL 관리어는 SQL2의레벨 1 에서는지원되지않는기능이며, SQL2의레벨 2와 X/Open의범위는 EXECUTE IMMEDIATE 문장만제외하고는동일하다. 여기서지원 되는기능은 SQL descriptor 관리, 동적자료처리, 동적커서정의및동적으로수행시킬 문의실행에대한기능이지원된다. -28-

29 여기에레벨 3 에서는동적으로수행시킬문의준비에대한기능을추가했다. KSQL1에서는 X/Open 수준의동적 SQL 관리어지원이적절하다고판단되어범위에포함되었다. 동적 SQL이란컴파일할때실행할 SQL문이결정되는것이아니라실행시 SQL문이결정되는것이므로응용프로그램에융통성을제공한다. 동적 SQL은레벨2로부터지원하는기능이지만대부분의상용 DBMS 는이를지원한다. 동적 SQL은데이타베이스시스템의사용자인터페이스로사용되는많은도구들이데이터베이스엔진과인터페이스시일반적으로채택하는방법이다. 여덟째, 오류를진단하는오류관리어는 SQL2의레벨 1을제외한각표준에서지원하고있다. SQL은비절차적언어이고문하나를처리하는과정이무척복잡하므로단순한오류코드로만으로는오류발생원인에대한이해가무척어렵다. 그러므로사용자가필요시에추가로오류에대한상세한설명을제공할수있도록오류관리어를추가한다. 또한기본적으로사용되는오류코드값을표준에서지정하므로써응용프로그램에서오류처리가용이하다. 응용프로그램은사용하고있는데이터베이스시스템과무관하게오류처리를수행할수있다. 마지막으로, 정보스키마는사용자가접근할수있는데이타베이스에대한스키마정보를제공하는스키마로서, SQL2의레벨 2 이상에서지원되는기능이다. 이정보스키마는현 SQL 환경내에있는모든스키마정보로부터특정사용자와관련된스키마정보만을뷰테이블로만들어저장한스키마이다. 정보스키마에속해있는뷰테이블에대해서는모든사용자가 SELECT 권한만보유하며, 이정보스키마의스키마이름은 INFORMATION_SCHEMA" 이다.KSQL1 에서는이를지원하지않는다. < 표 2-2> 표준화범위 문종류 SQL 레벨 1 레벨 2 레벨 3 X/OpenKSQL1 스키마 CREATE SCHEMA o o o x o 정의어 CREATE TABLE o o o o o -29-

30 문종류 SQL 레벨 1 레벨 2 레벨 3 X/OpenKSQL1 CREATE VIEW o o o o o GRANT o o o o o CREATE DOMAIN x o o x x CREATE ASSERTION x x o x x CREATE CHARACTER SET x o o x x CREATE COLLATION x x o x x CREATE TRANSLATION x x o x x 스키마 DROP SCHEMA x o o x o 처리어 DROP TABLE x o o o o ALTER TABLE x o o o o DROP VIEW x o o o o REVOKE x o o o o DROP DOMAIN x o o x x ALTER DOMAIN x x o x x DROP ASSERTION x x o x x DROP CHARACTER SET x o o x x DROP COLLATION x x o x x DROP TRANSLATION x x o x x 자료 DECLARE CURSOR o o o o o 처리어 OPEN o o o o o FETCH o o o o o CLOSE o o o o o SELECT:single row o o o o o -30-

31 문종류 SQL 레벨 1 레벨 2 레벨 3 X/OpenKSQL1 DELETE:positioned o o o o o DELETE:searched o o o o o INSERT o o o o o UPDATE:positioned o o o o o UPDATE:searched o o o o o DECLARE LOCAL TEMPORARY x x o x x 트랜잭션 SET TRANSACTION x o o x o 관리어 SET CONSTRAINT x x o x x COMMIT o o o o o ROLLBACK o o o o o 연결 CONNECT x x o o x 관리어 SET CONNECTION x x o o x DISCONNECT x x o o x 세션 SET CATALOG x x o x x 관리어 SET SCHEMA x x o x x SET NAMES x x o x x SET TIME ZONE TO x o o x x SET AUTHORIZATION SESSION x o o x x 동적 ALLOCATE DESCRIPTOR x o o o o SQL DEALLOCATE DESCRIPTOR x o o o o 관리어 GET DESCRIPTOR x o o o o -31-

32 문종류 SQL 레벨 1 레벨 2 레벨 3 X/OpenKSQL1 SET DESCRIPTOR x o o o o PREPARE x o o o o DEALLOCATE PREPARE x x o x x DESCRIBE INPUT x x o x x DESCRIBE OUTPUT x o o o o EXECUTE x o o o o 동적 EXECUTE IMMEDIATE x o o x x SQL dynamic DECLARE CURSOR x o o o o 관리어 ALLOCATE x o o x x < 계속> dynamic OPEN x o o o o dynamic FETCH x o o o o dynamic CLOSE x o o o o dynamic DELETE:positioned x o o o o dynamic UPDATE:positioned x o o o o preparable dynamic DELETE x x o x x preparable dynamic UPDATE x x o x x 오류관리어 GET DIAGNOSTICS x o o o o 정보스키마 INFORMATION SCHEMA x o o x x 기타문 CREATE INDEX x x x x x UPDATE STATISTICS x x x x x DROP INDEX x x x x x -32-

33 < 표 2-2> 에나타난것처럼 KSQL1은 SQL2의레벨 1 을 기반으로하고, 필요한기능을추 가한정도의범위를갖고있는데, 그이유는 첫째, 만약 SQL1 을기반으로하게 된다면, SQL1에정의된기능이현재상용되어있는관계 DBMS 제품들이제공하는기능에비해너무빈약하기때문에제품마다추가로제공되는기 능이다양해질것이며이기능들을사용하는응용프로그램들의호환성에문제가있게되 며, 둘째, 상용화되어있는관계 DBMS 제품들이 ISO IS 9075:1992의모든기능을만족시키 지못하기때문이다. 그리고, SQL2의레벨 l에비해 KSQL1에는동적 SQL 관리어, 스키마처리어, 오류관리어, 트랜잭션의속성을정의하는 SET TRANSATION 문이추가되었으며, 기본구성요소에한 글과한자를지원할수있도록 SQL character language 에 (KSC-5601 ( 완성형) letter> 을 추가하였다. -33-

34 제 4 절데이타베이스게이트웨이표준 데이타베이스게이트웨이란서로다른이기종데이타베이스를접근(access) 할수있도록개방된연결성을보장하는구조를말한다. 이는네트워크로연결된클라이언트/ 서버데이타베이스에서각각다른종류의데이타베이스정보를일관된형태로액세스할수있도록하는인터페이스를제공함으로써, 응용프로그램의개발환경을표준화하는것이다. 네트워크혹은대형컴퓨에서가능한모든업무를액세스하기위해알아야하는여러가지형식에대한지식이없어도게이트웨이의응용프로그램인터페이스 (Application Programming Interface, 이하 API) 의표준을따르기만하면다양한데이타소스(data source) 를접근할수있는응용프로그램을만들수있다. 따라서사용자는원하는데이타베이스관리시스템을선택하여해당드라이버와링크함으로써데이타베이스시스템의종류에관계없이응용프로그램을구동할수있다. 본게이트웨이표준방법에서는마이크로소프트사에서제공해주고, 많은 DBMS 제품들이지원해주는 ODBC(Open Database Connectivity) 를기본으로한표준에대하여설명한다. 1. 주요구성요소 데이타베이스게이트웨이는드라이버를통하여데이타소스로접속을요청하고, SQL을요 청하는역할을수행한다. 또한결과를받기위하여메모리할당및데이타형식을정의하 고, 필요에따라전송된결과를사용자에게출력하거나오류를처리하며, 작업이종료되면 접속해제를요구한다. ODBC는개념적으로크게다음의 4개의구성요소로이루어져있 다. 가. 응용(Application) 데이타자원(Data Source) 에접근하며 SQL 문장을보내고그결과를받기위하여 ODBC 함수를호출하는응용프로그램으로서, C 언어로작성되며, Microsoft Windows 운영체계 에서구동된다. -34-

35 나. 드라이버관리자(Driver Manager) 드라이버관리자는동적링크라이브러리(Dynamix Link Library, DLL) 이며, 어플리케이션에게접속가능한데이타자원에대한정보를제공해주고, 필요시동적으로해당드라이버를적재(1oad) 하는기능을담당한다. ODBC 어플리케이션은항상드라이버관리자를통하여통신을하며, 직접적으로드라이버와교신할수없다. 다. 드라이버(Driver) 드라이버관리자와네트워크사이에존재하며,ODBC 함수호출을처리하고, 어플리케이션과 특정 DBMS 사이의모든변환을수행한다. 표준 SQL 구문을목표로하는데이타자원이제 공하는 SQL 로변환하는기능도담당하고있다. 데이타베이스게이트웨이에서제공되는드 라이버는크게다음의두가지형태로나누어볼수있다. 1) 싱글타이어(single-tier) 드라이버 ANSI SQL 문장을지원하지않는 DBMS 를이용하기위한것으로, 드라이버는데이타소스 에포함되며그기능을부분적으로수행한다. 싱글타이어드라이버는 ODBC 호출과 SQL 문장을모두처리할수있다. 2) 멀티플타이어(multiple-tier) 드라이버 SQL 명령문처리시서버형관계 DBMS 에의존하는드라이버의형태로, 이방식은서버가 오직 SQL 명령문의기준에따른특정결과만을전달하기때문에네트워크트래픽을최소화 할수있다는장점이있다. 라. 데이타자원(Data Source) 사용자가접근을원하는데이타베이스와운영체제, DBMS, 네트워크기반환경을통틀어데이타자원이라한다. 어플리케이션은동시에여러데이타자원에연결될수있다. -35-

36 그림 2.2 ODBC의개념적구조 2. 지원레벨가. 지원함수목록데이타베이스게이트웨이에서는 ODBC 에서제공하는모든함수를제공해주도록하였으며, 제공함수중 ODBC 코어(core) 부분을본표준에서는레벨 1 로정하였고,ODBC의 Level 1 및 Level 2 부분을본표준에서는레벨 2 로정하였다. 레벨 1은표준함수중필수적으로제공이되어야하는부분이며, 레벨 2는필수기능은아니지만사용자의편의및시스템의효율성을위하여제공되는기능이다. 지원함수의목록은다음과같다. < 표2-3> 지원함수목록 분류함수이름목적레벨 데이타소스연결 SQLAllocEnv 환경핸들을얻으며, 하나의환경핸들은하나이상의연결을위하여사용될수있음 1 SQLAllocConnect 연결핸들을얻음 SQLConnect 데이터소스명, 사용자 ID, 패스워드에의하여특정드라이버에연결을수행 1-36-

37 분류함수이름목적레벨 SQLDriverConnect 드라이버관리자와드라이버가사용자에게연결대화를하도록연결요청에의해특정드라이버에연결됨 2 SQLBrowseConnect 다음레벨의애트리뷰트및적당한애트리뷰트값을리턴함. 값이각연결애트리뷰트에대해지정이되어있다면, 데이터소스에연결할것. 2 드라이버및데이터소스에대한정보확보 SQLDataSources 접근가능한데이터소스의리스트를리턴함 2 SQLGetInfo 특정드라이버와데이터소스에대한정보를리턴함 2 SQLGetFunctions 제공되는 드라이버 함수들을 리턴함 2 SQLGetTypeInfo 제공되는데이터타입에대한정보를리턴함 2 드라이버옵션설정및추출 SQLSetConnectOption 연결옵션을설정함 2 SQLGetConnectOption 연결옵션의값을리턴함 2 SQLSetStmtOption 문장옵션을설정함 2 SQLGetStmtOption 문장옵션의값을리턴함 2-37-

38 분류함수이름목적레벨 SQL 준비 요청 SQLAllocStmt 문장핸들을할당함 1 SQLPrepare 추후실행을위하여 SQL 문장을할당함 1 SQLSetParam SQLParamOption SQLGetCursorName SQL 문장내의파라미터에대한저장소를할당함 파라미터에대한다중값의사용을상술함 문장핸들과연관된커서이름을리턴함 SQLSetCursorName 커서이름을결정함 1 SQLSetScrollOptions 커서행위를컨트롤하는옵션을설정함 2 요청수락 SQLExecute 준비된문장을실행함 1 SQLExecDirect 문장을실행함 1 SQLNativeSql 드라이버에의하여번역된 SQL 분장의실제텍스트를리턴함 2 SQLDescribeParam 준비된문장에서특정파라미터에대한기술을리턴함 2 SQLNumParams 문장에서 파라미터의 개수를 리턴함 2-38-

39 분류함수이름목적레벨 SQLParamData SQLPutData 길이가긴데이터값의프로세싱을초기화컬럼에서길이가긴데이터값을저장함 2 2 결과및결과에대한정보추출 SQLRowCount 삽입, 변경, 삭제요청에의하여영향을받는행들의개수를리턴함 1 SQLNumResultCols 결과세트의컬럼의개수를리턴함 1 SQLDescribeCol 결과세트의컬럼을기술함 1 SQLColAttributes SQLBindCol 결과세트에서컬럼의추가적인속성을기술함 결과컬럼에대한저장영역을할당하고, 데이터타입을결정함 1 1 SQLFetch 결과행을리턴함 1 SQLExtendedFetch 결과의배열을리턴함 2 SQLGetData SQLSetPos 결과집합의한행의한컬럼을리턴함 데이터의검색블록내에커서를위치시킴

40 분류함수이름목적레벨 SQLMoreResults SQLError 가능한결과집합이더있는지결정하고, 만일그렇다면다음의결과집합을위하여프로세싱을초기화함 추가적인오류또는상태정보를리턴함 2 1 데이터 소스의 시스템 테이블 에 대한 정보 확보 SQLColumnPrivileges 컬럼리스트및접근권한 2 SQLColumns 컬럼이름리스트를리턴함을리턴함 2 SQLForeignKeys SQLPrimaryKeys SQLProcedureColumns SQLProcedures SQLSpecialColumn 외래키에서사용되는컬럼이름의리스트를리턴함 주키에사용되는컬럼이름리스트를리턴함 입출력파라미터및특정프로시쥬어에대한결과집합을구성하는컬럼을리턴함 특정데이터소스내에저장된 프로시쥬어 이름의 리스트를 리턴함 두가지컬럼세트에대한정보를리턴함 : 유일행식별에대한최적세트또는행의어떤값이변경될경우자동적으로변경되는컬럼의세트

41 분류함수이름목적레벨 SQLStatistics SQLTablePrivileges 테이블및인덱스에대한통계를리턴함 테이블리스트및접근권한을리턴함 2 2 SQLTables 테이블리스트를리턴함 2 문장종료 SQLFreeStmt 문장처리를종료하고관련커 서를닫거나문장핸들을제거 시킴 1 SQLCancel SQL 문장을취소함 1 SQLTransact 트랜잭션을완료또는롤백시 1 킴 연결종료 SQLDisconnect 연결을닫음 1 SQLFreeConnect 연결핸들을릴리즈함 1 SQLFreeEnv 환경핸들을릴리즈함 1 나. 지원 SQL 문장 데이타베이스게이트웨이에서는 ODBC에서제공하는모든 SQL 문장을제공해주도록하였 으며, 제공 SQL 문장중최소(0) 및코어(1) 부분을레벨 1 로정하였고, 확장(2) 부분을레 벨 2 로정하였다. 레벨 1은 SQL 문장중필수적으로제공이되어야하는부분이며, 레벨 2 는필수문장은아니지만사용자의편의성울위하여제공이되는문장이다. 지원 SQL 문장 의목록은다음과같다. -41-

42 < 표2-4> 지원 SQL 문장 종류 SQL 문장레벨 스키마 CREATE TABLE 1 정의어 CREATE VIEW 1 GRANT 1 스키마 DROP TABLE 1 처리어 ALTER TABLE 1 DROP VIEW 1 REVOKE 1 자료 SELECT: single row 1 처리어 DELETE: positioned 1 DELETE: searched 1 INSERT 1 UPDATE: positioned 1 OUTER JOIN 2 기타문 CREATE INDEX 2 DROP INDEX 2 다. 지원자료형태데이타베이스게이트웨이에서는 ODBC에서제공하는모든자료형태를제공해주도록하였 으며, 제공자료형태중 ODBC의지원 Leve1이 0 또는 1 이거나, KSQL1에서제공되는자료형태일경우레벨 1 로정하였고, 그이외의부분은레벨 2 로정하였다. 레벨 1은자료형태중필수적으로제공이되어야하는부분이며, 레벨 2는필수자료형태는아니지만사용자의편의성을위하여제공이되는문장이다. 지원자료형태의목록은다음과같다. -42-

43 < 표2-5> 지원자료형태 자료형태레벨비고 CHAR 1 KSQL1 제공 DATE 2 DECIMAL 1 KSQL1 제공 DOUBLE 1 KSQL1 제공 FLOAT 1 KSQL1 제공 BINARY 2 INTEGER 1 KSQL1 제공 LONGVARCHAR 2 LONGVARBINARY 2 NUMERIC 1 KSQL1 제공 REAL 1 KSQL1 제공 SMALLINT 1 KSQL1 제공 TIME 2 TIMESTAMP 2 VARCHAR 1 VARBINARY 2 BIT 2-43-

44 제 3장연계방법비교 많은조직이다양한플래폼을사용하여데이타베이스관리시스템을사용하고있다. 그런 경우사용자는원하는데이타를어려움없이접근함을요구한다. 이러한요구에부응하여데 이타베이스벤더들이자사에고유한프로토콜을가진게이트웨이를개발하여공급하게되었 다. 그러나이러한해결책은데이타베이스벤더들로하여금다중의데이타접근을위한프 로토콜을개발하게하였고, 사용자는많은프로토콜을설치하고관리하게되었다. 이러한 해결책은공급자뿐만아니라사용자에게도복잡하고비싼결과를가져왔다. 가장간단하고가장비용이적게드는방법은모든공급자들이제공하는하나의잘정리된 데이타접근프로토콜을사용하는것이다. 이러한가능성을가지고출발한것이 ODBC와 RDA SQL 이다. 제 1절 RDA C-ISAM과 RDA SQL RDA C-ISM은 RDA SQL 표준을참조하여작성하였다. 이들표준의공통점과차이점을서술하여이해를돕고자한다. 1. 공통점 RDA SQL과 RDA C-ISAM 은모두특수표준으로서,ISD 9579-l RDA-Generic에기반을두고있다. 즉, RDA 특수표준은 RDA 일반표준에각환경을반영하여보완적인내용만을추가한것이다. 따라서 SQL 환경에서 RDA SQL 표준을적용하거나, C-ISAM 환경에서 RDA C-ISAM 표준을적용하고자할경우 RDA 일반표준인 ISO 9579-l RDA-Generic을같이참고하여야한다. 2. 차이점 RDA SQL 표준은 ISO 9075: 1992 (SQL Database Language) 이표준의대상이고,RDA C-ISAM 표준에서는 KIS : l994 ( 전산망표준 C-ISAM) 과 TX C-ISAM이대상이 다. -44-

45 RDA SQL 표준의 ConformanceLeve1은그해당범위에따라서국제표준전체를대상으로 하는 Ful1 SQL, Ful1 SQL의일부분을대상으로하는 Intermediate SQL,Intermediate SQL의일부분을대상으로하는 Entry SQL 등으로구분된다. RDA C-ISAM표준에서는전 산망표준인 KIS :1994와 TX C-ISAM 으로구분하였다. 자원개방서비스에서 RDA SQL 표준은 UsageMode를 update, retrieva1으로읽기전용 및수정으로구분하였고, RDA C-ISAM 표준에서는 LockMode, AccessMode,TransMode 으로구분하여각각 C-ISAM 의기능을반영하였다. 여기에서 LockMode는ISEXCLLOCK, ISMANULOCK, ISAUTOLOCK 으로, AccessMode는 ISINPUT, ISOUTPUT, ISINOUT으 로, TransMode는 ISOCONTROL, ISTRANS 으로구분한다. 자원개방서비스에서 RDA C-ISAM 표준은개방하고자하는자원의최대수가정해져있기 때문에 한정된 데이타 파일의 수를 초과하여 개방하고자 할 때 발생하는 오류로서 ISDataFileTooManyOpen 이라는매개변수를추가로사용한다. 명령어 직접수행 서비스인 R-Execute 에서, RDA SQL 표준은 오류를 전송하기 위하여 STATE, CODE 의조합으로사용하고, RDA C-ISAM 표준에서는 STATE 매개변수만을이 용하여오류를전송한다. RDA 표준에서 사용하는 데이타의 타입으로서, SQL 표준에서는 character, numeric decimal, interger, smallint, float, real, doubleprecision, datetime, Interval, varchar, bit, bitvarying 등이 있으며, C-ISAM 표준에서는 character, Hcharacter, decimal, interger, long, float, double 등이있다 RDA C-ISAM 표준에서는저장실행서비스가생략되었다. 왜냐하면, C-ISAM의경우다른 데이타베이스언어와는달리문장하나만으로는의미단위를형성할수없다. 따라서원하는 일을수행할수있는의미단위를구성하기위해서는, 다수의 C-ISAM 함수를이용하여프 로시쥬어를구성하고, 그프로시쥬어를호출해야한다. 그러나 RDA일반표준에는프로시쥬 어호출함수가없기때문에, 의미단의를형성할수없게되고, 따라서저장실행은무의미 해진다. RDA SQL 표준에서는 IS l RDA-Generic에서정의한응용-문맥에서기본응용-문 맥,TP응용- 문맥의모든형식을구성하고있다.RDAC-ISAM표준에서는 C-ISAM의 TP 처리를위한기능이부족하기때문에 TP 응용- 문맥의객체식별자, ASE 데이타타입, 순서 규칙및적합성요구사항등을추가로정의하지않는다. -45-

46 제 2절 RDA SQL과 DB 게이트웨이 RDA SQL은 ISO/IEC 의국제표준이고, ODBC는단체표준이지만산업체에서의실제표준이다. 이두가지표준의유사성과차이점을분석하여전산망에사용되는표준들에대한이해를돕고자한다. 1. 공통점여러벤더에의해공급되는하나이상의풀래폼위에있는다양한관계형데이타베이스시스템을접근하기위해서만들어졌다. 또한표준화된 API(Application Program Interface) 에근거를두고있다.ODBC는 X/Open의표준인 CLI(Call Level Interface) 를근거로 Microsoft 가주도하여만든표준이며, RDA SQL은 ISO 의표준이다. 그리고, 원격지데이타베이스를접근하기위해 SQL 접속문장을사용한다. 응용프로그램은현재의서버를선택하기위해다음과같은두가지방법을사용할수있다. ㆍ응용프로세스와데이타베이스서버를연결하기위한 SQL CONNECT ㆍ응용프로세스의현존하는접속중에서하나를인식함으로써현재의서버를선택하기위한 SQL SET C0NNECTION RDA SQL 은서버시스템의행태를정의한다. 데이타베이스서버는데이타베이스저장과데이타베이스프로세스서비스를 RDA 클라이언트에게제공한다. 더불어 RDA SQL은 RDA 클라이언트가 RDA 서버시스템의능력을사용할수있도록통신서비스와규약을상술하고있다.ODBC 경우도데이타베이스서버는데이타베이스저장과데이타베이스프로세스서비스를 RDA 클라이언트에게제공한다 또한대화형통신모델을사용한다. 클라이언트와서버간의교류가통신을위한논리적접속의문맥안에서일어난다. 2. 차이점분산데이타베이스를접근함에있어 RDA SQL 은두가지의일반적인유형을지원한다 한트랜잭션이단지하나의데이타베이스서버에접근하는 RDA 기본응용문맥(Basic Application Context) 과한트랜잭션이여러데이타베이스서버에동시에접근하는 RDA TP 응용문맥(Transaction Processing Application Context) 을지원하고있다. -46-

47 ODBC의경우는한트랜잭션이어느한시점에단지하나의데이타베이스서버에접근하는방법만을제공한다. 또한정보스키마테이블(Information Scheme Table) 의정보를접근하는데있어 ODBC 는이를위한서비스를, 제공하나, RDA SQL 은제공하지않는다. 정보스키마테이블은카타로그테이블(catalog table) 이라불리우는데특정한데이타베이스에대한서술적정보 (descriptive information) 를가지고있다. 그리고 ODBC와 RDA SQL이지원하는 SQL 의종류에있어상당한차이를보여주고있다. RDA SQL의경우지원되는 SQL 의수준을국제표준에준하여명시한다. 예를들면, ISO , ISO , IS ( 엔트리, 중간, 고급) RDA 클라이언트와서버는클라이언트가접근하고자하는자원을확인할때서버와타협을하게된다. 그러나, ODBC 경우는다소제한된 SQL 수준을제공하나그수준내에서는네트워크내에있는어떠한 SQL 변이(variants) 의사용도허용한다. RDA SQL표준은클라이언트에통신기능만을부가하여클라이언트는사용자로부터제출받은요청을그대로서버에보내고, 데이타베이스의실행은전적으로서버가실행한다. 반면에, ODBC에서는통신기능과 SQL 기능을갖춘 SQL드라이버가위치한클라이언트에서 SQL 구문처리등을수행하여이를각서버에대응하는동적함수호출형태로번역한다. 그다음번역된호출을서버에보낸다. -47-

48 제 4장결론 본보고서에서는국가기간전산망에데이타베이스연계표준기술을수용하기위하여관련표준들을서술하고비교하였다. 단기적으로는원격지데이타베이스접근이나 DB 게이트웨이등의기술을수용하고, 장기적으로는분산트랜잭션처리가가능한다중데이타베이스시스템을구축하는방향으로, 국가기간전산망을발전시키는것이바람직할것이다. 단기적으로는 " 원격지데이타베이스접근: C-ISAM" 이나 "DB 게이트웨이" 표준등을수용하는것이타당할것이다. 이는여러데이타베이스를하나의데이타베이스처럼사용하게하는다중데이타베이스시스템의전단계로서그림 4-1 과같은구성에적용할수있다. 그림 4-1. 원격지데이터베이스접근: C-ISAM 시스템구성예 그림 4-2 에서보이고있는것은 " 원격지데이타베이스접근: C-ISAM" 을이용하여호스트 A 를데이타베이스서버화하였을때의예이다. 다른호스트 B, C 등은각기자기가관리하 는데이타베이스를접근하는이외에, 클라이언트프로세스를갖춤으로써호스트 A의데이 타베이스를접근할수있다. 앞에서 기술하였듯이, 우리는 단기적으로 사용할 수 있는 " 원격지 데이터베이스 접근: C-ISAM" 과 DB 게이트웨이 의연관성을발견할수있다. -48-

49 두기술의기저를이루고있는기본개념은사실상동일하다고할수있다. 원격지데이타 베이스접근표준은네트워크상의원격지의데이타베이스를접근하기위한통신표준이다. 이원격지데이타베이스접근표준은특정데이타베이스를위한표준이아니다. 즉, 일반적 으로원격지의데이타베이스를접근할때는표준화된 13개의서비스호출을사용하도록권 고하는것이다. 한편 SQL 게이트웨이는데이타베이스가 SQL을지원하는제품일경우에원 격지에서이들데이타베이스를접근할수있도록하는기술이다. 따라서그기본개념이같 을수밖에없다. DB 게이트웨이의 표준의함수호출들과원격지데이타베이스접근서비 스호출을비교해보면이를쉽게알수있다. 접속의시작/ 종료, 데이타베이스언어의실 행, 상태정보등을얻기위한호출들로서비록그구문은다르지만의미적으로거의동일 한호출들로구성되어있다. 원격지데이타베이스접근표준과 DB 게이트웨이표준간의큰차이점은다음과같다. 원격 지데이타베이스접근표준은클라이언트에통신기능만을부가하여클라이언트는사용자로 부터제출받은요청을그대로서버에보내고, 데이타베이스언어의실행은전적으로서버가 실행한다. 반면에, DB 게이트웨이에서는통신기능과 SQL 기능을갖춘 SQL 드라이버가 위치한클라이언트에서 SQL 구문처리등을수행하여이를각서버에대응하는동적함수 호출형태로번역한다. 그다음번역된호출을서버에보낸다. 그러므로이두가지기술은 거의동일하며, 사용하는 SQL 표준만이두기술의상이점이라고봐도무방하다. 본연구에서는단기적으로비교적구현이쉽고비용이적게들것으로예상되는'' 원격지데이 타베이스접근: C-ISAM 표준 과 "DB 게이트웨이표준" 이사용된다. 그림4-2의예는 SQL 데이타베이스를관리하는서버 A와서버 B를클라이언트역활을하게되는 PC에서접 근하는예이다. 클라이언트의사용자응용은서버 A와서버 B를둘다원격접근하여결과 를얻은다음, 두결과를취합/ 비교하는응용이라고가정한다. 서버 A는 SQL을지원하므로 클라이언트는서버 A를접근하기위하여 DB 게이트웨이클라이언트프로세스를갖추어야 한다. 서버 B 역시 SQL을지원하므로클라이언트는서버 B를접근하기위하여 DB 게이트 웨이클라이언트프로세스를갖추어야한다. -49-

50 그림 4-2. DB 게이트웨이를사용한복수데이터베이스접근 단기적으로제안되는 C-ISAM의원격지데이타베이스접근방식또는 DB 게이트웨이방식 이성숙되어가는시점에서, 장기적으로국가기간전산망을연방데이터베이스또는다중데 이타베이스시스템으로통합하는방안을강구한다. 먼저둘이상의데이타베이스에대한전 역트랜잭션의수행에대한통신상의표준을정의하고있는 ISO/IEC의 DTP(Distributed Transaction Processing) 를수용하여분산트랜잭션의처리가가능하도록한다. DTP를완 벽하게수용한다고해서전역트랜잭션수행의완벽성을보장받지는못한다. 왜냐하면 DTP 는분산트랜잭션의처리중에통신상에서발생할수있는문제만을해결하므로, 각사이 트의데이타자원관리에서발생하는문제점은그사이트에서운영되는 DBMS 또는화일 시스템의기능에의하여좌우되기때문이다. 본연구에서설명된여러표준들은여러데이타베이스를상호연계하여사용하기위한기술 들이다. 또한현재의표준들도계속해서진화발전될것이므로이를예의주시하면서역동 적으로대처할수있는것이바람직하다. 본연구를바탕으로국가기간전산망의상호연계 및상호운용을위한표준의기반을마련하고, 단계적으로이를꾸준히실현하고발전시켜 나가는것이바람직하다. -50-

51 부록 1. RDA SQL 표준 -51-

52 부록 1. RDA SQL 표준 ISO/IEC RDA Part-2 를전기통신표준으로수용하고있다. 준에서사용될수있기때문에본부록에별도로소개한다. 이표준역시전산망표 1. 모델 가.RDA서비스일반모델 본 절은 ISO/IEC 의 모델에서 정의한 개념을 RDA SQL 표준으로 유도한다. ISO/IEC 에서정의한 ' 데이타자원' 이라는용어는 ISO/IEC 9075 SQL 에서의 데이 타베이스자원 과의미가동일하다. 본표준에서는이것을 SQL 데이타베이스자원" 이라한 다. RDA 클라이언트에서는데이타베이스자원을개방함으로써 RDA 서버에있는 SQL 데이타 베이스자원을접근한다. 그리고데이타베이스언어서비스에대한요청으로사용가능하다. RDA SQL 표준에서는 Nested SQL 데이타베이스자원을지원하지않는다. SQL의데이타베이스자원을폐쇄하면 RDA 클라이언트는이에대한접근이불가능하다. 즉, 데이타베이스언어서비스요청에대한후속사용이불가능하다. 구현자는 RDA 서버에 서하나혹은여러개의SQL 데이타베이스자원을사용할수있도록구현해야한다. 나.SQL데이타베이스 언어개념 본절은 ISO/IEC 9075 SQL에서정의한개념을 RDA 서버에있는데이타베이스모델로유 도한다. 비록 SQL 데이타베이스자원에지역적으로호스트프로그램에설정되어있다하더 라도 RDA SQL 문은데이타베이스서버에의해명확하게수행된다. 데이타베이스서버에서발생하는예외조건또는완료조건은 RDA 클라이언트에되돌아간다. 2. 서비스 가.RDA및 SQL서비스 1) R-Initialize 서비스 -52-

53 신규 RDA 대화설정을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 sqlinitializeargument: RDA 클라이언트가원하는 level 을정의한다. sqlconformanceleveldefault: 클라이언트에서정의한 SQL Level 을나타낸다. userdata: RDA 서버구축자가정의하여사용한다. ㆍ결과매개변수 sqlinitializeresult: RDA 서버에서반환되는정보를정의한다. userdata: RDA 서버구축자가정의하여사용한다. 2) R-Open 서비스현재개방된대화에서사용하고자하는데이타자원의취득을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 sqlaccesscontroldata: SQL 데이타베이스개방권한을검증하는매개변수이다. sqlusagemode: 지정된 SQL 데이타베이스자원으로의접근모드를나타낸다. SQLOpenArgument: 클라이언트에의하여요구되는정보를정의한다. charset: 코드화된문자집합을정의한다. sqlconformancelevel: 클라이언트에서표현한 SQL 의특성을정의한다. sqldiagnosticsrequested: 클라이언트에서요구하는진단정보를서술한다. ㆍ결과매개변수 sqlopenresult: 서버에의하여반환되는정보를정의한다. charset: 코드화된문자집합을정의한다. charsetnotsupported: 클라이언트에서표현한 SQL 의특성을정의한다. sqlconformancelevel: 클라이언트에서선언된문자집합에대한 RDA 서버의지원을정의 한다. ㆍ오류변수 sqlopenerror: RDA 서버에서오류를알리기위해정의한다. invalidsqlconformancelevel: sqlconformancelevel 값이허락되지않았다. rdatransactionopen: SQL 데이타베이스자원개방이허락되지않는다. -53-

54 sqlaccesscontrolviolation: 클라이언트는요청한 SQL 데이타베이스를개방할권한이없 다. sqldatabaseresourcealreadyopen: 접근하고자하는 SQL 데이타베이스는이미사용중이 다. 3) R-Close 서비스데이타자원의사용을종료하는서비스로서다음과같은매개변수를정의한다. ㆍ오류변수 sqlcloseerror: 서버에서오류를알리기위해사용한다. rdatransactionopen: SQL 데이타베이스자원의폐쇄가허락되지않는다. 4) R-Execute DBL 서비스 클라이언트가데이타베이스서버에게하나의데이타베이스문장의즉시수행을요청하는서 비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 sqldblstatement: 서버에서수행될 RDA SQL 문을나타낸다. sqldblargumentspecification: SQL 데이터베이스타임의서술목록을정의한다. sqldblresultspecification: 결과에대한 SQL 데이터베이스타입의서술목록을정의한 다. dblarguments: sqldblstatement 의수행횟수를정의한다. singleargument: sqldblstatement의 수행을 sqldblargumentvalues를 이용하여 repetitioncount 만큼수행할것을정의한다. sqldblargumentvalues: sqldblargumentspecification에정의된인수매개변수값의목록을정의한다. multipleargument: sqldblstatement를 n개의 listofsqldblargumentvalues를이용하여 repetitioncount 만큼수행할것을정의한다. listofsqldblargumentvalues: sqldblargumentspecification에정의된다수의인수매개변수값의목록을정의한다. returnsqldiagnostics: 클라이언트의진단정보요청을정의한다. ㆍ결과매개변수 -54-

55 sqldblresultspecification: SQL 데이터베이스타입서술자의목록을정의한다. listofresultvalues: 클라이언트에서요청한각 DBL 명령어의수행결과를정의한다. sqldblexception: RDA SQL 문의실행에대한완성코드를정의한다. sqlstate: "ISO/IEC 9075: l992" 에서정의한코드값을나타낸다. sqlcode: 이매개변수는명세에정의한코드값을나타낸다. sqlerrortext: sqlstate 값에대응하는경고및오류를정의한다. sqldiagnostics: 클라이언트에서요청한진단정보를결과로반환한다. sqldblresultvalues: sqldblresultspecification에서 정의된 결과 매개변수들의 값의 목록을정의한다. ㆍ오류매개변수 sqlexecutedblerror: RDA 서버에서오류를알리기위하여사용된다. hostidentifiererror: Host Identifier 지정의잘못을정의한다. rdatransactionnotopen: 트랜잭션을개방하지않고, RDA SQL문을포함하는연산을수행하려했다. sqldblargumentcountmismatch: sqldblargumentvalues의개체수와 sqldblargument Specification 개체수가동일하지않다. sqldblargumenttypemismatch: sqldblargumentvalues의 개체 타입 한개 이상과 sqldblargumentspecification 개체타입이동일하지않다. sqldblnochartset: SQL 데이터베이스자원에대한문자집합이없다. sqldblstatementnotallowed: sqldblstatement의내용이 RDA SQL 특수표준에정의 되지않은 SQL 문이다. sqlusagemodeviolation: SQL 데이타베이스자원의요청에대한사용모드가서술된 RDA SQL 문의규칙과일치하지않는다. 5) R-DefineDBL 서비스클라이언트가향후의사용을위하여데이타베이스문장을정의하는요청서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 -55-

56 sqldblstatement: 서버에서수행될 RDA SQL 문을나타낸다. sqldblargumentspecification: SQL 데이터베이스타입의서술목록을정의한다. sqldblresultspecification: 결과에대한 SQL 데이타베이스타입의서술목록을정의한 다. ㆍ결과매개변수 sqldblresultspecification: SQL 데이터베이스타입서술자의목록을정의한다. sqldblexception: RDA SQL 문의실행에대한완성코드를정의한다. sqlstate: "ISO/IEC 9075: 1992" 에서정의한코드값을나타낸다. sqlcode: 이매개변수는명세에정의한코드값을나타낸다. sqlerrortext: sqlstate 값에대응하는경고및오류를정의한다. ㆍ오류매개변수 sqldefinedblerror: RDA 서버에서오류를알리기위하여사용한다. hostidentifiererror: Host Identifier 지정의잘못을정의한다. sqldblnocharset: SQL 데이타베이스자원에대한문자집합이없다. sqldblstatementnotallowed: sqldblstatement의내용이 RDA SQL 특수표준에정의 되지않은 SQL 문이다. sqlusagemodeviolation: SQL 데이터베이스자원의요청에대한사용모드가서술된 RDA SQL 문의규칙과일치하지않는다. 6) R-InvokeDBL 서비스저장된데이터베이스문장을인식자를이용하여정해진횟수만큼의실행을요청하는서비스로서다음과같은매개변수를정의한다. ㆍ요청매개변수 dblarguments: sqldblstatement 의수행횟수를정의한다. singleargument: sqldblstatement의수행을 sqldblargumentvalues를이용하여 repetitioncount 만큼수행할것을정의한다. sqldblargumentvalues: sqldblargumentspecification에정의된인수매개변수값의목록을정의한다. multipleargument: sqldblstatement를 n개의 listofsqldblargumentvalues를이용하여 repetitioncount 만큼수행할것을정의한다. -56-

57 listofsqldblargumentvalues: sqldblargumentspecification에정의된다수의인수매개변수값의목록을정의한다. returnsqldiagnostics: 클라이언트의진단정보요청을정의한다. ㆍ결과매개변수 sqldblresultspecification: SQL 데이터베이스타입서술자의목록을정의한다. listofresultvalues: 클라이언트에서요청한각 DBL 명령어의수행결과를정의한다. sqldblexception: RDA SQL 문의실행에대한완성코드를정의한다. sqlstate: "ISO/IEC 9075: 1992" 에서정의한코드값을나타낸다. sqlcode: 이매개변수는명세에정의한코드값을나타낸다. sqlerrortext: sqlstate 값에대응하는경고및오류를정의한다. sqldblresultvalues: sqldblresultspecification에서 정의된 결과 매개변수들의 값의 목록을정의한다. sqldiagnostics: 클라이언트에서요청한진단정보를결과로반환한다. ㆍ오류매개변수 sqlinvokedblerror: RDA 서버에서오류를알리기위하여사용된다. rdatransactionnotopen: 트랜잭션을개방하지않고, RDA SQL문을포함하는연산을수 행하려했다. sqldblargumentcountmismatch: sqldblargumentvalues의개체수와 sqldblargument Specification 개체수가동일하지않다. sqldblargumenttypemismatch: sqldblargumentvalues의 개체 타입 한개 이상과 sqldblargumentspecification 개체타입이동일하지않다. sqlusagemodeviolation: SQL 데이터베이스자원의요청에대한사용모드가서술된 RDA SQL 문의규칙과일치하지않는다. 나.SQL 문, 인수, 결과 1) sqldblstatement -57-

58 statementtext: SQL 문을갖는코드화된문장이다. charset: 코드화된문자집합의명세를정의한다. 2) sqldblargumentspecification과 sqldblresultspecification ListOfSQLDataTypeDescriptor: 각항목은 sqldblstatement내의개별적인입출력의발 생을정의한다. nullable: 서버에서반환하는결과목록의공백을정의한다. colname: 결과 Column 의이름을서술한다. TypeDescriptor: 대응되는항목에대한데이타베이스타입을정의한다. charactertype: SQL 문에서문자데이타베이스항목을정의한다. charset: 코드화된문자집합을정의한다. length: 문자데이타베이스항목에대한문자의최대수를정의한다. FixedLengthEncoding: charactertype의 sqlvalue 전송을하기위하여 SPACE를제거했 는지를정의한다. numerictype: 숫자데이타의타입을정의한다. precision: numerictype에서전송되는값을표현하는데필요한십진베이스의숫자의갯 수를정의한다. scale: numerictype 에서비음수정수를정의한다. decimaltype: 기계무관한십진데이타베이스항목을정의한다. precision: 전송되는값을표현하는데필요한십진베이스의숫자의갯수를정의한다. scale: decimaltype 에서비음수정수를정의한다. integertype: 부호를갖는 2 바이트이진정수데이타베이스를정의한다. precision: integertype에대한 precisionbase 매개변수에서정의한베이스(Base) 를서술 한다. precisionbase: integertype 에대한사용되는숫자의베이스(Base) 를서술한다. smallinttype: 소규모정수형타입을정의한다. precision: smallinttype에대한 precisionbase 매개변수에서정의한베이스(Base) 를사용 해숫자와갯수를서술한다. -58-

59 precisionbase: smallinttype 에대한사용되는숫자의베이스(Base) 를서술한다. floattype: SQL 의부동소수점데이타베이스항목을서술한다. mantissaprecision: 가수(Mantissa) 에서유효이진수갯수를서술하는양의정수를정의한다. maxexponent: 지수의최대절대값을서술하는비음수정수를정의한다. realtype: SQL 의실수형데이타항목을서술한다. mantissaprecision: realtype 에대하여가수(Mantissa) 에서유효이진수개수를서술하는양의정수를정의한다. maxexponent: realtype에대하여지수의최대절대값을서술하는비음수정수를정의한다. doubleprecisiontype: 배정도부동소수점데이타베이스항목을정의한다. mantissaprecision: doubleprecisiontype 에대하여가수(Mantissa) 에서유효이진수갯수를서술하는양의정수를정의한다. maxexponent: doubleprecisiontype에대하여지수의최대절대값을서술하는비음수정 수를정의한다. datetimetype: datetime 의타입을정의한다. datatimequalifier: 본 매개변수는 ISO/IEC 9057: 1992(SQL) 에서 정의한 DATETIME INTERVAL_CODE 와대응된다. fractionalsecondsprecision: datetimetype와 intervaltype에 대하여 ISO/IEC 9057:1992(SQL) 에서 정의한 <time fractional seconds precision> 혹은 <interval fractional seconds precision> 을정의한다. intervaltype: interval 의타입을정의한다. intervalqualifier: 본 매개변수는 ISO/IEC 9057: 1992(SQL) 에서 정의한 DATETIME_INTERVAL_CODE 와대응된다. leadingfieldprecision: ISO/IEC 9057:1992(SQL) 에서 정의한 <interval leading field precision> 을정의한다. -59-

60 fractionalsecondprecision: datetimetype와 intervaltype에대하여 ISO/IEC 9057:1992(SQL) 에서정의한 (time fractional seconds precision> 혹은 <interval fractional seconds precision> 을정의한다. varchartype: varchar 의타입을정의한다. charset: 코드화된문자집합을정의한다. length: 문자데이타베이스항목에대한문자의최대수를정의한다. bittype: bit 의타입을정의한다. length: 문자데이타베이스항목에대한문자의최대수를정의한다. bitvaryingtype: bitvarying 의타입을정의한다. length: 문자데이타베이스항목에대한문자의최대수를정의한다. 3) sqldblargumentvalues와 sqldblresultvalues listofsqlvalue: SQL 문에서의개별적인 <Variable Specification> 값을갖는항목을정의한 다. dataitem: Data Variable 값을정의한다. characteritem: 문자 Data Variable 값을정의한다. numericitem: 숫자 Data Variable 값을정의한다. decimalitem: 십진 Data Variable 값을정의한다. integeritem: 2 바이트이진정수Data Variable 값을정의한다. smallintitem: 소규모정수형 Data Variable 값을정의한다. floatitem: 부동소수점 Data Variable 값을정의한다. realitem: 실수형 Data Variable 값을정의한다. doubleprecisionitem: 배정도부동소수점 Data Variable 값을정의한다. datetimeitem: datetime의 Data Variable 값을정의한다. intervalitem: interval의 Data Variable 값을정의한다. varcharitem: varchar의 Data Variable 값을정의한다. bititem: bit의 Data Variable 값을정의한다. bitvaritem: bitvar의 Data Variable 값을정의한다. indicator: <indicator variable> 값을정의한다. -60-

61 다. 순차규칙 RDA SQL 에서는서버에대한순차규칙은정의하지않으나, 클라이언트에대한순차규칙은다음과같이정의한다. ISO/IEC (RDA 일반표준) 에정의된순차규칙에추가하여, 다음과같은순차규칙을적용한다. a) 만일 RDA 클라이언트가 SQL 데이타베이스자원을성공적으로개방할경우에는, RDA 클라이언트는 RDA 대화에서다른 R-Open 요청을발생하기전에 RDA SQL 데이타베이스자원을폐쇄하여야한다. b) 만일 RDA 클라이언트가 RDA SQL 문의실행을요청한다면, RDA 대화에 RDA 트랜잭션의개방이있어야한다. 3. 규약 가. 서버실행규칙 l) 대화-상태모델가)RDA대화개체 sqlconformanceleveldefault: RDA 대화문맥에서사용될수있는 DBL문에대한 SQL 표준을식별하기위하여사용된다. userdata: 숙성은 RDA 서버구현자에의하여정의된다. 나) 개방된데이타베이스자원개체 sqlconformancelevel: RDA 대화문맥에서사용될수있는 DBL문에대한 SQL 표준을 식별하기위하여사용된다. sqlusagemode: SQL 데이타베이스자원의사용모드를정의한다. retrieval: 데이타베이스의조회만가능하다. update: 데이타베이스의수정도가능하다. sqldiagnosticsrequested: 클라이언트에서요청하는진단정보를서술한다. always: R-ExecuteDBL 결과에진단정보가항상포함될것을나타낸다. onrequest: 요구가있을경우에만 R-ExecuteDBL의실행결과에진단정보가포함될것을 나타낸다. -61-

62 never: 진단정보가포함되지않는것을나타낸다. clientdefcharset: 클라이언트에서사용가능한 default 문자집합을서술한다. serverdefcharset: 서버에서사용되는 default 문자집합을서술한다. 다) 정의된 DBL 개체 sqldblargumentspecification: RDA SQL문인수의 SQL 데이타베이스타입이다. sqldblresultspecification: RDA SQL문의결과의 SQL 데이타베이스타입이다. sqldblstatement: RDA에서정의된 SQL 문이다. 2) R-Initialize 서비스 ㆍ개체조작규칙 sqlconformanceleveldefault: R-Initialize 지시프리미티브에서정의한값이다. userdata: RDA 서버에의해처리되는 userdata 속성값이다. ㆍ결과규칙 userdata: 대화개체에서처리된 userdata 속성값이다. 3) R-Open 서비스 다음은개방된데이타베이스자원개체에관하여추가된속성들의초기값에대한제한을정 의한다. ㆍ개체조작규칙 sqlconformancelevel: R-Open 지시프리미티브, SQL 의레벨을식별한다. sqldiagnosticsrequested: R-Open 지시프리미티브의 sqldiagnostics-requested 매개 변수값혹은 default 값인 "never" 를갖는다. sqlusagemode: SQL 의사용모드를정의한다. clientdefcharset: 초기값은 R-Open 지시프리미티브에서제공하는 charset 혹은 null" 이 다. serverdefcharset: 매개변수의값에의하여식별되는문자집합결과, 혹은문자집합을식 별하는객체식별자, 혹은 null 을갖는다. ㆍ결과규칙다음은어떤결과가반환될때, 그결과매개변수의제한들을정의한다. -62-

63 sqlconformancelevel: 개방된자원개체에서의속성값, 혹은개방된자원개체에서의속성 값, 혹은생략된다. charsetnotsupported: RDA 서버에서 charset 매개변수에의해식별된문자집합을제공할 수없으면 true 이고, 그렇지않으면 false" 이다. charset: RDA dialogueid 속성이현재 RDA 대화를식별하면 dataresource- Handle은 속성값이다. ㆍ오류규칙 invalidsqlconformancelevel: sqlconformancelevel 매개변수의값이 SQL 전산망표준 객체식별자중하나로확인하지않았다. rdatransactionopen: 대화개체의 rdatransactionstatus 속성이 rdatransactionopen 값을갖는다. sqlaccesscontrolviolation: R-Open 지시프리미티브의 sqlaccesscontroldata 매개변수 는 RDA 클라이언트에게권한을주지못한다. sqldatabaseresourcealreadyopen: 접근하고자하는데이타베이스자원이사용중이다. 4) R-Close 서비스 ㆍ오류규칙 rdatransactionopen: RDA 대화개체의 rdatransactionstatus이 rdatransaction-open 값을가지고있다. 5) R-ExecuteDBL 서비스 ㆍ결과규칙다음은어떤결과가반환될때, 그결과매개변수의제한들을정의한다. charset: listofsqldatadestriptor 의대응되는객체식별자가동반된다. sqldblexception: 개방된데이타베이스자원개체의 sqldiagnosticsrequested에따라서버에의해 sqldiagnostics 를반환한다. colname: sqldblresultspecification의부분인 listofsrldatadescriptor를각항목에서서술한다. < 표 l> 에서는 SQL 인수와결과매개변수를사용하는 R-ExecuteDBL 을정의한다. -63-

64 SQL 인수와결과매개변수를사용하는 R-ExecuteDBL 실행될 RDA SQL문 ArgSpec ArgVal ResSpec ResVal <close statement> <commit statement> <declare cursor> C->S (H) <delete statement: positioned> <delete statement: searched> C->S (H) C->S (H) <fetch statement> C<-S (H) C<-S (H) <insert statement> C->S (H) C->S (H) <open statement> C->S (H) C->S (H) C<-S (H) <rollback statement> <select statement: single row> C->S (H) C->S (H) C<-S (H) C<-S (H) <update statement: posioned) C->S (H) C->S (H) <update statement: searched> C->S (H) C->S (H) <schema definition> <table definition> <view definition> <grant statement> <allocate cursor statement> C->S (H) C->S (H) <allocate descriptor statement> <deallocate descriptor statement> <deallocate descriptor statement> C->S (H) C->S (H) <describe statement> C->S (H) C->S (H) C<-S (H) <dynamic close statement> C->S (H) C->S (H) <dynamic declare cursor> <dynamic delete statement: positioned> C->S (H) C->S (H) <dynamic fetch statement> C->S (H) C->S (H) C<-S (H) C<-S (H) <dynamic open statement> C->S (H) C->S (H) C<-S (H) <dynamic update statement: posioned> C->S (H) C->S (H) <execute statement> C->S (H) C->S (H) C<-S (H) C<-S (H) <execute immediate statement> C->S (H) C->S (H) <get descriptor statement> <preparable dynamic delete statement: positioned -64-

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

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

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

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

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

More information

BMP 파일 처리

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

More information

System Recovery 사용자 매뉴얼

System Recovery 사용자 매뉴얼 Samsung OS Recovery Solution 을이용하여간편하게 MagicInfo 의네트워크를설정하고시스템을백업및복원할수있습니다. 시스템시작시리모컨의 - 버튼이나키보드의 F3 키를연속해서누르면복구모드로진입한후 Samsung OS Recovery Solution 이실행됩니다. Samsung OS Recovery Solution 은키보드와리모컨을사용하여조작할수있습니다.

More information

Windows Server 2012

Windows Server  2012 Windows Server 2012 Shared Nothing Live Migration Shared Nothing Live Migration 은 SMB Live Migration 방식과다른점은 VM 데이터파일의위치입니다. Shared Nothing Live Migration 방식은 Hyper-V 호스트의로컬디스크에 VM 데이터파일이위치합니다. 반면에, SMB

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

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

슬라이드 1

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

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

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상 Android 용 Brother Image Viewer 설명서 버전 0 KOR 아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상표입니다. Android는

More information

신규투자사업에 대한 타당성조사(최종보고서)_v10_클린아이공시.hwp

신규투자사업에 대한 타당성조사(최종보고서)_v10_클린아이공시.hwp 신규투자사업에 대한 타당성 조사 (요약본) 2015. 4. 지방공기업평가원 제주관광공사가부족한쇼핑인프라를보완하고, 수익을제주관광진흥에재투자하여 관광산업활성화와관광마케팅재원확보 라는양대목적달성에기여하고공기업으로서사회적책임을다하고자시내면세점사업에투자하려는의사결정에대한타당도는전반적으로볼때 긍정 으로평가할수있음 역할및필요성 대내 외환경 정책및법률 경제성기대효과

More information

H3250_Wi-Fi_E.book

H3250_Wi-Fi_E.book 무선 LAN 기능으로 할 수 있는 것 2 무선 LAN 기능으로 할 수 있는 것 z q l D w 3 Wi-Fi 기능 플로우차트 z q l D 4 Wi-Fi 기능 플로우차트 w 5 본 사용 설명서의 기호 설명 6 각 장별 목차 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 목차 1 2 3 4 8 목차 5 6 7 8 9 9 목차 10 11 12

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

<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

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

ThinkVantage Fingerprint Software

ThinkVantage Fingerprint Software ThinkVantage 지문 인식 소프트웨어 First Edition (August 2005) Copyright Lenovo 2005. Portions Copyright International Business Machines Corporation 2005. All rights reserved. U.S. GOVERNMENT USERS RESTRICTED RIGHTS:

More information

Cisco FirePOWER 호환성 가이드

Cisco FirePOWER 호환성 가이드 Cisco 호환성가이드 Cisco 호환성 이문서에서는 Cisco 소프트웨어와하드웨어의호환성및요건을다룹니다. 추가 릴리스또는제품정보는다음을참조하십시오. 설명서로드맵 : http://www.cisco.com/c/en/us/td/docs/security/firesight/ roadmap/firesight-roadmap.html Cisco ASA 호환성가이드 : http://www.cisco.com/c/en/us/td/docs/security/asa/compatibility/

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

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

Microsoft PowerPoint SQL 추가 기능

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

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

810 & 820 810 는 소기업 및 지사 애 플리케이션용으로 설계되었으며, 독립 실행형 장치로 구성하거 나 HA(고가용성)로 구성할 수 있습니다. 810은 표준 운영 체제를 실행하는 범용 서버에 비해 가격 프리미엄이 거의 또는 전혀 없기 때문에 화이트박스 장벽 을

810 & 820 810 는 소기업 및 지사 애 플리케이션용으로 설계되었으며, 독립 실행형 장치로 구성하거 나 HA(고가용성)로 구성할 수 있습니다. 810은 표준 운영 체제를 실행하는 범용 서버에 비해 가격 프리미엄이 거의 또는 전혀 없기 때문에 화이트박스 장벽 을 목적에 맞게 설계된 어플라 이언스 원격 용도로 최적화된 어플라이언스 관리 및 에너지 효율성 향상 원격 관리 LOM(Lights Out Management), IPMI 2.0 장치 식별 버튼/LED 실시간 시스템 환경 및 오류 모 니터링 Infoblox MIBS를 통한 SNMP 모니터링 고가용성 공급 장치 예비 디스크 예비 냉각 팬 전원 공급 장치 현장 교체

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

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

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770>

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

More information

View Licenses and Services (customer)

View Licenses and Services (customer) 빠른 빠른 시작: 시작: 라이선스, 라이선스, 서비스 서비스 및 주문 주문 이력 이력 보기 보기 고객 가이드 Microsoft 비즈니스 센터의 라이선스, 서비스 및 혜택 섹션을 통해 라이선스, 온라인 서비스, 구매 기록 (주문 기록)을 볼 수 있습니다. 시작하려면, 비즈니스 센터에 로그인하여 상단 메뉴에서 재고를 선택한 후 내 재고 관리를 선택하십시오. 목차

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

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

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

More information

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지 PX-8000 SYSTEM 8 x 8 Audio Matrix with Local Control 2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지역에

More information

TTA Journal No.157_서체변경.indd

TTA Journal No.157_서체변경.indd 표준 시험인증 기술 동향 FIDO(Fast IDentity Online) 생체 인증 기술 표준화 동향 이동기 TTA 모바일응용서비스 프로젝트그룹(PG910) 의장 SK텔레콤 NIC 담당 매니저 76 l 2015 01/02 PASSWORDLESS EXPERIENCE (UAF standards) ONLINE AUTH REQUEST LOCAL DEVICE AUTH

More information

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

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

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

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

슬라이드 1

슬라이드 1 한국산업기술대학교 제 5 강스케일링및회전 이대현교수 학습안내 학습목표 3D 오브젝트의확대, 축소및회전방법을이해한다. 학습내용 3D 오브젝트의확대및축소 (Scaling) 3D 오브젝트의회전 (Rotation) 변홖공갂 (Transform Space) SceneNode 의크기변홖 (Scale) void setscale ( Real x, Real y, Real z)

More information

The Relational Model

The Relational Model The Relational Database 1 관계데이터모델 릴레이션의개념 릴레이션의특성 데이터베이스키 Relational Query Languages SQL 데이터정의문 DB Lab. CUK 1 관계 (Relational) 데이터모델 (1/2) Relational database 란? a set of relations Relation: made up of

More information

목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows

목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows 삼성SDS 하이패스 USB 드라이버 설치 매뉴얼 삼성SDS(주) 목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows 8에서 설치...9 2. 드라이버

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

ActFax 4.31 Local Privilege Escalation Exploit

ActFax 4.31 Local Privilege Escalation Exploit NSHC 2013. 05. 23 악성코드 분석 보고서 [ Ransomware 악성코드 ] 사용자의 컴퓨터를 강제로 잠그고 돈을 요구하는 형태의 공격이 기승을 부리고 있 습니다. 이러한 형태의 공격에 이용되는 악성코드는 Ransomware로 불리는 악성코 드 입니다. 한번 감염 시 치료절차가 복잡하며, 보고서 작성 시점을 기준으로 지속 적인 피해자가 발생되고

More information

LG-LU6200_ICS_UG_V1.0_ indd

LG-LU6200_ICS_UG_V1.0_ indd 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

More information

설계란 무엇인가?

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

More information

Amazon EBS (Elastic Block Storage) Amazon EC2 Local Instance Store (Ephemeral Volumes) Amazon S3 (Simple Storage Service) / Glacier Elastic File Syste (EFS) Storage Gateway AWS Import/Export 1 Instance

More information

Microsoft PowerPoint - CSharp-10-예외처리

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

More information

FileMaker Go 13 5 5 5 6 6 7 8 8 10 10 10 10 10 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 15 4 17 17 17 18 18 18 18 18 19 19 19 19 19 19 20 20 20 21 21 22 22 22 22 23 23 1. 2. 3. 4. 5. 6. 1. 2. 3. 1

More information

User Guide

User Guide HP ThinUpdate 관리자 설명서 Copyright 2016 HP Development Company, L.P. Windows는 미국 및/또는 기타 국가에서 Microsoft Corporation의 등록 상표 또는 상표입 니다. 기밀 컴퓨터 소프트웨어. 소유, 사용 또는 복사 에 필요한 유효한 사용권을 HP로부터 취득했 습니다. FAR 12.211 및

More information

1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정 및 모니터링 등의 기능을 제공하여 관리대상 클라이언트 시스템에 설치된 V3

1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정 및 모니터링 등의 기능을 제공하여 관리대상 클라이언트 시스템에 설치된 V3 CR-15-59 AhnLab Policy Center 4.6 for Windows 인증보고서 인증번호 : ISIS-0631-2015 2015년 7월 IT보안인증사무국 1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정

More information

제 12강 함수수열의 평등수렴

제 12강 함수수열의 평등수렴 제 강함수수열의평등수렴 함수의수열과극한 정의 ( 점별수렴 ): 주어진집합 과각각의자연수 에대하여함수 f : 이있다고가정하자. 이때 을집합 에서로가는함수의수열이라고한다. 모든 x 에대하여 f 수열 f ( x) lim f ( x) 가성립할때함수수열 { f } 이집합 에서함수 f 로수렴한다고한다. 또 함수 f 을집합 에서의함수수열 { f } 의극한 ( 함수 ) 이라고한다.

More information

오버라이딩 (Overriding)

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

More information

음악의 구성 형식에 따라 추출된 대표 선율을 이용한 내용 기반 음악 검색 시스템

음악의 구성 형식에 따라 추출된 대표 선율을 이용한 내용 기반 음악 검색 시스템 악구 동기(1동기) 동기(2동기) 악 절 MIC Hummed Queries Digital Audio MIDI Songs Melody Database Pitch Tracker Melodic Contour Query Engine Ranked List of Matching Melodies 사용자 음악 MIDI 화일 특징 정보 추출 박자, 높이,

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

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

목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host) 서버 설정... 9 W7CLIENT (Windows 7 Client) 클라이얶트 설정

목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host) 서버 설정... 9 W7CLIENT (Windows 7 Client) 클라이얶트 설정 W2K8 R2 RemoteApp 및 Web Access 설치 및 구성 Step-By-Step 가이드 Microsoft Korea 이 동 철 부장 2009. 10 페이지 1 / 60 목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host)

More information

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Microsoft Word - windows server 2003 수동설치_non pro support_.doc Windows Server 2003 수동 설치 가이드 INDEX 운영체제 설치 준비과정 1 드라이버를 위한 플로피 디스크 작성 2 드라이버를 위한 USB 메모리 작성 7 운영체제 설치 과정 14 Boot Sequence 변경 14 컨트롤러 드라이버 수동 설치 15 운영체제 설치 17 운영체제 설치 준비 과정 Windows Server 2003 에는 기본적으로

More information

ICT EXPERT INTERVIEW ITS/ ICT? 차량과 인프라 간 통신(V2I) Nomadic 단말 통신(V2P) 차량 간 통신(V2V) IVN IVN [ 1] ITS/ ICT TTA Journal Vol.160 l 9

ICT EXPERT INTERVIEW ITS/ ICT? 차량과 인프라 간 통신(V2I) Nomadic 단말 통신(V2P) 차량 간 통신(V2V) IVN IVN [ 1] ITS/ ICT TTA Journal Vol.160 l 9 오늘날 자동차와 도로는 ICT 기술과 융합되어 눈부시게 발전하고 있습니다. 자동차는 ICT 기술과 접목되어 스마트 자동차로 변화하며 안전하고 편리하며 CO 2 방출을 줄이는 방향으로 기술개발을 추진하고 있으며 2020년경에는 자율 주행 서비스가 도입될 것으로 전망하고 있습니다. 또한, 도로도 ICT 기술과 접목되어 스마트 도로로 변화하며 안전하고 편리하며 연료

More information

슬라이드 1

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

More information

Chapter 1

Chapter 1 3 Oracle 설치 Objectives Download Oracle 11g Release 2 Install Oracle 11g Release 2 Download Oracle SQL Developer 4.0.3 Install Oracle SQL Developer 4.0.3 Create a database connection 2 Download Oracle 11g

More information

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리 ArcGIS for Desktop 10.4 Single Use 설치가이드 Software: ArcGIS for Desktop 10.4 Platforms: Windows 10, 8.1, 7, Server 2012, Server 2008 ArcGIS for Desktop 10.4 시스템 요구사항 1. 지원 플랫폼 운영체제 최소 OS 버전 최대 OS 버전 Windows

More information

<31302DB1E8BDC2B1C72E687770>

<31302DB1E8BDC2B1C72E687770> 수자원 운영계획 시스템의 구현을 위한 수리계획 모형 자료구조의 활용 서 론 김재희김승권박영준 댐 군 최적 연계 운영문제 화천 춘천 북한강 계 소양댐 상류권 의암 청평 수도권 #2 소양댐 하류권 팔당 소양 남한강 계 수도권 #1 충주 충주권 댐 발전소 용수 수요지 수자원 운영계획 시스템의 구현을 위한 수리계획 모형 자료구조의 활용 Shortage 화천댐 SPL

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 RecurDyn 의 Co-simulation 와 하드웨어인터페이스적용 2016.11.16 User day 김진수, 서준원 펑션베이솔루션그룹 Index 1. Co-simulation 이란? Interface 방식 Co-simulation 개념 2. RecurDyn 과 Co-simulation 이가능한분야별소프트웨어 Dynamics과 Control 1) RecurDyn

More information

설치 순서 Windows 98 SE/Me/2000/XP 1 PC를 켜고 Windows를 시작합니다. 아직 컴퓨터에 프린터를 연결하지 마십시오. 2 PC에 P-S100 CD-ROM(프 린터 드라이버)을 삽입합니다. 3 설치 프로그램을 시작합니다. q CD-ROM의 PS1

설치 순서 Windows 98 SE/Me/2000/XP 1 PC를 켜고 Windows를 시작합니다. 아직 컴퓨터에 프린터를 연결하지 마십시오. 2 PC에 P-S100 CD-ROM(프 린터 드라이버)을 삽입합니다. 3 설치 프로그램을 시작합니다. q CD-ROM의 PS1 디지털 사진 프린터 P-S100 프린터 드라이버 설치 가이드 사용하는 컴퓨터에 따라 제공된 프린터 드라이버를 설치합니다. 설치 절차 에 대한 자세한 내용은 CD-ROM의 Readme 파일을 참조하십시오. 작동 환경 Windows 호환 모델: IBM PC/AT 및 호환품 운영 체제: Windows 98 SE/Me/2000/XP (Windows 98 SE/Me/2000/XP

More information

wtu05_ÃÖÁ¾

wtu05_ÃÖÁ¾ 한 눈에 보는 이달의 주요 글로벌 IT 트렌드 IDG World Tech Update May C o n t e n t s Cover Story 아이패드, 태블릿 컴퓨팅 시대를 열다 Monthly News Brief 이달의 주요 글로벌 IT 뉴스 IDG Insight 개발자 관점에서 본 윈도우 폰 7 vs. 아이폰 클라우드 컴퓨팅, 불만 검증 단계 돌입 기업의

More information

120~151역사지도서3

120~151역사지도서3 III 배운내용 단원내용 배울내용 120 121 1 2 122 3 4 123 5 6 124 7 8 9 125 1 헌병경찰을앞세운무단통치를실시하다 126 1. 2. 127 문화통치를내세워우리민족을분열시키다 1920 년대일제가실시한문화 통치의본질은무엇일까? ( 백개 ) ( 천명 ) 30 20 25 15 20 15 10 10 5 5 0 0 1918 1920 ( 년

More information

MF Driver Installation Guide

MF Driver Installation Guide Korean MF 드라이버 설치설명서 사용자 소프트웨어 CD-ROM... 드라이버 및 소프트웨어 정보...1 지원되는 운영 체제...1 MF 드라이버 및 MF Toolbox 설치... [쉬운 설치]를 사용한 설치...2 [사용자 정의 설치]를 사용한 설치...10 USB 케이블 연결(USB를 이용해 연결하는 경우만)...20 설치 결과 확인...21 온라인

More information

제1장 Unix란 무엇인가?

제1장  Unix란 무엇인가? 1 소켓 2 1 소켓 클라이언트 - 서버모델 네트워크응용프로그램 클리이언트 - 서버모델을기반으로동작한다. 클라이언트 - 서버모델 하나의서버프로세스와여러개의클라이언트로구성된다. 서버는어떤자원을관리하고클라이언트를위해자원관련서비스를제공한다. 3 소켓의종류 소켓 네트워크에대한사용자수준의인터페이스를제공 소켓은양방향통신방법으로클라이언트 - 서버모델을기반으로프로세스사이의통신에매우적합하다.

More information

안전을 위한 주의사항 2 경고 상세내용 4 SMP 이용자 7대 안전수칙 6 불법조작금지 6 Dolby, DTS, SRS, DivX 7 사용자 설명서 가이드 10 구성품 확인 12 각 부분의 명칭과 기능 13 SMP의 올바른 사용법 14 구성품 사용안내 14 SMP 전원 켜기/끄기 16 터치스크린 사용안내 17 통신환경 설정 20 SMP 시작하기 22 홈 스크린

More information

- 2 -

- 2 - 보도자료 미래부 - 부산시, 아시아디지털방송아카데미 ( 가칭 ) 설립공동협력키로 - 부산콘텐츠마켓 과함께아시아공동체의방송발전에크게기여할것 - - 1 - - 2 - - 3 - [ 붙임 1] 아시아디지털방송아카데미설립 MOU 체결 ( 안 ) ㆍ 2 7 6 10 5-4 - 참고 1 상호협력양해각서 (MOU) ( 안 ) 아시아디지털방송아카데미설립 운영을위한 상호협력양해각서

More information

특허청구의 범위 청구항 1 삭제 청구항 2 단일 개의 운영체제를 갖는 클라이언트 단말에 있어서, 제1 운영체제와, 상기 제1 운영체제 하에서 사용되는 파일을 저장하는 메모리; 및 상기 메모리에 저장된 파일을 운영체제 제공장치로 전송하고 상기 메모리를 포맷하며, 상기 운

특허청구의 범위 청구항 1 삭제 청구항 2 단일 개의 운영체제를 갖는 클라이언트 단말에 있어서, 제1 운영체제와, 상기 제1 운영체제 하에서 사용되는 파일을 저장하는 메모리; 및 상기 메모리에 저장된 파일을 운영체제 제공장치로 전송하고 상기 메모리를 포맷하며, 상기 운 (19) 대한민국특허청(KR) (12) 등록특허공보(B1) (51) 국제특허분류(Int. Cl.) G06F 9/22 (2006.01) (21) 출원번호 10-2012-0020563 (22) 출원일자 2012년02월28일 심사청구일자 2012년02월28일 (65) 공개번호 10-2013-0098775 (43) 공개일자 2013년09월05일 (56) 선행기술조사문헌

More information

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode]

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode] TCP Server/Client Department of Computer Engineering Kyung Hee University. Choong Seon Hong 1 TCP Server Program Procedure TCP Server socket() bind() 소켓생성 소켓번호와소켓주소의결합 listen() accept() read() 서비스처리, write()

More information

산업원천기술개발사업 착수회의 20ft~40ft급 세일요트 엔지니어링 통합관리 및 핵심부품 생산기술 개발

산업원천기술개발사업 착수회의 20ft~40ft급 세일요트 엔지니어링 통합관리 및 핵심부품 생산기술 개발 세일 요트 제품과 업체 정보 관리를 위한 시스템 설계 이필립 지노스 2012 대한산업공학회 한국경영과학회 춘계학술대회 경주 1 / 21 차 례 1. 서론 2. 세일요트 온라인 시장 3. 세일요트 제품과 업체 정보관리 4. 세일 요트 제품과 업체 정보 관리를 위한 시스템 요구사항 분 석 요구사항 수집 기능 유스케이스 정의 5. 세일 요트 제품과 업체 정보 관리를

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

EDB 분석보고서 (04.06) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time-

EDB 분석보고서 (04.06) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time- EDB 분석보고서 (04.06) 04.06.0~04.06.0 Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. 분석내용정리 ( 작성 : 펜타시큐리티시스템보안성평가팀 ) 04년 06월에공개된 Exploit-DB의분석결과, SQL 공격에대한보고개수가가장많았습니다. 이와같은결과로부터여전히 SQL 이웹에서가장많이사용되는임을확인할수있습니다.

More information

SBR-100S User Manual

SBR-100S User Manual ( 1 / 13 ) SBR-100S 모델에 대한 사용자 펌웨어 업그레이드 방법을 안내해 드립니다. SBR-100S 는 신규 펌웨어가 있을시 FOTA(자동업데이트) 기능을 통하여 자동 업그레이드가 되며, 필요시 사용자가 신규 펌웨어를 다운받아 수동으로 업그레이드 할 수 있습니다. 1. 준비하기 1.1 연결 장치 준비 펌웨어 업그레이드를 위해서는 SBR-100S

More information

Straight Through Communication

Straight Through Communication 중소-중견 기업을 위한 데이터 관리 및 1-2차 백업 통합 시스템 구축 제안 V1.0 제안 배경 및 도입 장점 제안 배경 중소-중견 기업의 IT 환경에서 데이터 관리 및 백업, 모바일 오피스 및 클라우드 환경 구축을 위해 소프트웨어와 이를 구동할 서버, 스토리지, 운영체제, 보안까지 모든 것을 구축하려면 비용과 관리의 부담이 클 수 밖에 없습니다. 따라서 대부분의

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

컴퓨터관리2번째시간

컴퓨터관리2번째시간 Company 컴퓨터 관리 참고 자료 PC 운영체제 POST 기능 :, ROM BIOS ( : [F8]) 1. Windows XP Windows XP 사용자 계정 :,,, 강화된 디지털 미디어 지원 기능 : (Windows Movie Maker), CD (Windows Media Player), Windows 홈 네트워크 기능 :, 강화된 시스템 관리 :,

More information

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

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

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

More information

1. 파일 명명규칙

1. 파일 명명규칙 소프트웨어 공학 UML 과제 [UseCase Diagram] Use Case Diagram [ 목 차 ] 2.1.Use Case Diagram 개요 2.2.Use Case 구성요소 2.3.Relationship 2.4.작성방법 2.5.참고문헌 1. Use Case Diagram 1.1 Use Case 모델링 개요 - Use Case 는 개발자가 아닌 사용자

More information

고3-02_비문학_2_사회-해설.hwp

고3-02_비문학_2_사회-해설.hwp 비문학 기출 제재별 문제 모음 (2007~2011학년도 학력평가) 정답 및 해설 사회 2 비문학 사회 01 사회 2011 학년도 10 월학력평가 정답과해설 사회 1 2012 학년도 11 월모의평가 ( 대전 ) 1. 이해한내용으로추론하는능력을파악하는문제이다. 1 7. 유사한사례를파악한다. 5 [ 오답풀이 ] 2. 이해한내용을바탕으로적용할수있는능력을파악하는문제이다.

More information

PowerPoint Template

PowerPoint Template SOFTWARE ENGINEERING Practice #1 (SA) Door Lock 201114188 김종연 201114191 정재욱 201114192 정재철 201114195 홍호탁 www.themegallery.com 2013-10-3 1 / 43 Contents 1 SRS - SRS 0.9 -> 1.0 버전업 2 SRA - DFD - Process Specification

More information

기초컴퓨터프로그래밍

기초컴퓨터프로그래밍 구조체 #include int main() { } printf("structure\n"); printf("instructor: Keon Myung Lee\n"); return 0; 내용 구조체 (struct) Typedef 공용체 (union) 열거형 (enum) 구조체 구조체 (structure) 어떤대상을표현하는서로연관된항목 ( 변수 )

More information

C++Builder ADO Programming (5) - ADO Transaction, Errors

C++Builder ADO Programming (5) - ADO Transaction, Errors C++Builder ADO Programming (5) - ADO Transaction, Errors Collections, Connection Events 지난번 강의에서 우리의 레밍은 TADOConnection의 여러 가지 속성들과 메소드들을 익히고 그것을 사용해서 SQL 문도 실행시키고 저장 프로시저도 호출해 보았다. 그것은 그것 나름대로의 한 방법이며

More information

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks XSS s XSS, s, May 25, 2010 XSS s 1 2 s 3 XSS s MySpace 사건. Samy (JS.Spacehero) 프로필 페이지에 자바스크립트 삽입. 스크립트 동작방식 방문자를 친구로 추가. 방문자의 프로필에 자바스크립트를 복사. 1시간 만에 백만 명이 친구등록. s XSS s 위험도가 낮은 xss 취약점을 다른 취약점과 연계하여

More information

Slide 1

Slide 1 SeoulTech 2011-2 nd 프로그래밍입문 (2) Chapter 6. 구조체와클래스 박종혁교수 (http://www.parkjonghyuk.net) Tel: 970-6702 Email: jhpark1@snut.ac.kr Learning Objectives 구조체 구조체형 함수매개변수로서의구조체 구조체초기화 클래스 정의, 멤버함수 public 과 private

More information

Adobe Flash 취약점 분석 (CVE-2012-0754)

Adobe Flash 취약점 분석 (CVE-2012-0754) 기술문서 14. 08. 13. 작성 GNU C library dynamic linker $ORIGIN expansion Vulnerability Author : E-Mail : 윤지환 131ackcon@gmail.com Abstract 2010 년 Tavis Ormandy 에 의해 발견된 취약점으로써 정확한 명칭은 GNU C library dynamic linker

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

슬라이드 1

슬라이드 1 강력한성능! 인터넷 / 업무용데스크탑 PC NX-H Series Desktop PC NX1- H700/H800/H900 NX2- H700/H800/H900 NX1-H Series 사양 Series 제품설명 ( 모델명 ) NX1-H Series, 슬림타입 기본형모델중보급형모델고급형모델 NX1-H800:112SN NX1-H800:324SN NX1-H800:534MS

More information

Storage_for_Megapixel_Video01

Storage_for_Megapixel_Video01 메가픽셀 비디오를 위한 스토리지 옵션 메가픽셀 보안 응용 프로그램을 디자인할 때 선택할 수있는 여러 스토리지 옵션이 있습니다. 그것은 스토리지를 선택하거나 권장하는 VMS 일반이지만, 구입하기 전에 고려해야 할 여러 가지 요소가 없습니다. 현재, 스토리지 비용 및 가용성은 과거에 존재한 이래로 큰 관심으로하지 않습니다. 하드 드라 이브 용량이 커질수록 비용이

More information

슬라이드 제목 없음

슬라이드 제목 없음 Ch. 4 SQL (Sturctured Query Language) 2015.06 충북대학교경영정보학과조완섭 (wscho@chungbuk.ac.kr) 목차 - SQL2에서데이터정의, 제약조건및스키마변경 - SQL에서의기본질의 - 더복잡한 SQL 질의들 - SQL에서삽입, 삭제, 갱신구문 - SQL 뷰 - 주장으로추가적인제약조건명시 - SQL의부가적인기능들 Ch4

More information

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

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

More information

*2008년1월호진짜

*2008년1월호진짜 3. USB 이동식저장장치를이용하여전파되는악성코드분석 1. 개 요 최근 USB 이동식 저장장치를 통하여 전파되는 악성코드에 대한 감염피해가 증가하고 있어 주의가 필요하다. 이번에 확인된 ntion.exe 악성코드는 감염 시, 특정 사이트에 접속하여 추가 악성코드를 다운로드하는 Dropper 기능을 수행한다. 또한, 웹 서버가 감염될 경우는 웹 서버내의 웹 페이지가

More information

3 Contents 8p 10p 14p 20p 34p 36p 40p 46P 48p 50p 54p 58p 생명다양성재단 영물이라는 타이틀에 정 없어 보이는 고양이, 날카롭게 느껴지시나요? 얼음이 따뜻함에 녹듯이, 사람에게 경계심 많은 길고양이도 곁을 내어주면 얼음 녹듯이 당신을 바라봅니다. 길 위에 사는 생명체라 하여 함부로 대하지 말아주세요. 싫으면 외면해주세요.

More information

을 할 때, 결국 여러 가지 단어를 넣어서 모두 찾아야 한다는 것이다. 그 러나 가능한 모든 용어 표현을 상상하기가 쉽지 않고, 또 모두 찾기도 어 렵다. 용어를 표준화하여 한 가지 표현만 쓰도록 하여야 한다고 하지만, 말은 쉬워도 모든 표준화된 용어를 일일이 외우기는

을 할 때, 결국 여러 가지 단어를 넣어서 모두 찾아야 한다는 것이다. 그 러나 가능한 모든 용어 표현을 상상하기가 쉽지 않고, 또 모두 찾기도 어 렵다. 용어를 표준화하여 한 가지 표현만 쓰도록 하여야 한다고 하지만, 말은 쉬워도 모든 표준화된 용어를 일일이 외우기는 특집 전문 용어와 국어생활 전문 용어의 표준화 -남북 표준에서 시맨틱 웹까지- 최기선 한국과학기술원 전산학과 교수 1. 전문 용어 표준화가 사회 문화를 향상시키는가? 전문 용어 는 우리에게 어떤 의미가 있는가? 이 질문은 매일 마시는 공기 는 우리에게 어떤 의미가 있느냐고 묻는 것과 같다. 있을 때에는 없 는 듯하지만, 없으면 곧 있어야 함을 아는 것이 공기이다.

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

<C3E6B3B2B1B3C0B0313832C8A32DC5BEC0E7BFEB28C0DBB0D4292D332E706466> 11-8140242-000001-08 2013-927 2013 182 2013 182 Contents 02 16 08 10 12 18 53 25 32 63 Summer 2 0 1 3 68 40 51 57 65 72 81 90 97 103 109 94 116 123 130 140 144 148 118 154 158 163 1 2 3 4 5 8 SUMMER

More information

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드] 리눅스 설치 Vmware를 이용한 Fedora Core 8 설치 소프트웨어실습 1 Contents 가상 머신 실습 환경 구축 Fedora Core 8 설치 가상 머신 가상 머신 가상 머신의 개념 VMware의 설치 VMware : 가상 머신 생성 VMware의 특징 실습 환경 구축 실습 환경 구축 Fedora Core 8 설치 가상 머신의 개념 가상 머신 (Virtual

More information

<312E20C0AFC0CFC4B3B5E55F5352444320C0FCC0DAB1E2C6C720B1B8B8C5BBE7BEE7BCAD2E687770>

<312E20C0AFC0CFC4B3B5E55F5352444320C0FCC0DAB1E2C6C720B1B8B8C5BBE7BEE7BCAD2E687770> 페이지 2 / 6 첨부 1. 공급품 목록 및 납기일정 번호 품명 모델명/사양 Vendor 단위 수량 납기 비고 1 (샘플기판) 6Layer, FR-4, 1.6T, 1온스, 2 (샘플기판) 3 (샘플기판) 4 (샘플기판) 5 (샘플기판) FRONT PANEL BOARD 3종 1. 샘플기판은 Board 별 성능시험용 2. 샘플 기판 후 Board 별 육안점검 및

More information

고객 카드 1588-7278

고객 카드 1588-7278 고객 카드 1588-7278 i 안전을 위한 경고사항 안전을 위한 주의사항 i 헤드유닛 DISP RADIO MEDIA PHONE SEEK TRACK 헤드유닛 FOLDER MUTE SCAN SETUP 스티어링 휠 리모트 컨트롤 + - MODE 기본모드 화면 Radio 모드 변경 RADIO 라디오 주파수 검색하기 SEEK TRACK 라디오 모드 사용하기 저장방송

More information