오늘 자 매일 경제 A30면에 미셀리 교육감의 미국공교육개혁의 기사 위에 앨빈토플러가 국회 강연회에서 연설한 내용의 글이 실려있는 걸 보면서 느낀 걸 몇 자 적어본다.

경제가 IMF가 어렵다고 하는 이 시점에 왜 갑자기 교육개혁에 대한 화두를 언급하면서 세계적인 미래학자인 앨빈토플러의 연설 내용이 실려 있는지 의미가 있는 상황이라고 생각한다.

앨빈 토플러는 차별화된 개인화 교육을 시사하고 있다. 현재의 교육의 틀을 깨는 개인의 능력에 맞는 차별화된 교육을...
그에 이러한 주장은 그의 최근의 저서 "부의 미래"에 보면 잘 나타나 있다.
변화하기 힘든 대표적인 시대적으로 뒤처진 조직으로 국가 조직, 교육시스템 등을 언급하고 있으니까 말이다.


개인적으로 그의 의견에 동의한다. 급변하는 무한경쟁의 시대, 1등 기업만이 생존하는데 우위에 서게 되는 적자생존의 시대에 이에 적합한 인재를 양성하는 일은 대단히 중요하고 그에 따라 현 교육시스템은 상당히 이러한 인재를 길러내는데는 어려움이 있는 것이 사실이기 때문이다. 따라서 우리나라의 교육시스템도 이제는 개인의 특성을 살리는 방향으로
교육시스템을 개편해야 할 때가 아닌가 생각한다.
하지만  이에 대한 변화에 앞서 변화에 따르는 여러가지 영향들과 어떻게 추진해야할 것인가에 대한 목표설정 및 구체적인 실천계획들이 제시되어야  한다고 생각한다.

미국의 시스템은 미국에 최적화된 시스템이라고 생각한다. 즉 미국의 사회보장제도나 그 깊이에 숨어져 있는 고도의 개인주의, 합리적인 사고가 바탕이된 미국사회 조직과 우리나라의 혈연, 지연, 뿌리깊은 지역주의, 뿌리깊은 유교사상, 전통적인 샤머니즘이 어우러진 이 나라의 상황은 엄연히 다르므로 우리나라에 맞는 독창적인 개인의 특성을 최대한 살리면서도 사회에 필요한 일원을 길러내야 한다고 생각한다.

끝으로 걸러내지 않고 성숙된 시민의식도 자라나지 않은 우리나라에 미국의 지방자치를 그대로 받아들인 결과 현재 우리나라에서 벌어지고 있는 지방자체제도의 폐해들을 타산지석 삼아 교육 개혁은 국민을 위한 독창적이고 효과적인 개혁이 되기를 기대해 본다.


Posted by 원철연(체르니)
,

간단한 파일복사 방법을 익혀볼까요?
File.Copy() 함수를 이용하면 됩니다.
프로젝트 생성에서 console 애플리케이션을 선택해서 생성하면 됩니다.

사용자 삽입 이미지

실행결과
사용자 삽입 이미지

위에서 보면 LastIndexOf(""\")은 마지막으로 "\" 나오는 인덱스번호를 리턴합니다.
위에서는 23 따라서 여기에 1을 더하고 Substring()함수를 해주면 원하는 파일 USERS01.DBF 파일이름을
가져올 수 있게 되겠지요.

이상으로 간단한 파일복사 명령에 대해서 알아보았습니다.
Posted by 원철연(체르니)
,

사용할 기본 테이블
사용자 삽입 이미지

전체 스크립트
사용자 삽입 이미지

실행결과
사용자 삽입 이미지

이상으로 문장트리거의 예를 다루어 보았습니다.
보다 향상된 기능을 하는 트리거를 만들어보는 것은 독자들의 몫으로 남겨둡니다.
편안한 밤들 되시길...
Posted by 원철연(체르니)
,

트리거(Trigger)

트리거는 프로시저, 함수와 같이 그 블록구조가 유사하지만 프로시저, 함수는 외부적인 실행명령으로 실행되는 반면에 트리거의 실행은 DML문이 발생할 때 시행된다. INSERT, UPDATE, DELETE문이 실행될 때 정의된 트리거도 실행된다.


트리거의 용도

1. 데이터 베이스 테이블 생성시에 참조 무결성과 데이터 무결성 그 밖의 조약조건으로
 
정의할 수 없는 복잡한 요구사항에 대한 조건을 생성

 

2. 테이블 데이터 작업에 대한 감시, 보안 용도

 

3. 테이블에 생기는 변화에 따라 필요한 다른 프로그램을 실행시킬 수 있음

 

트리거 형식

CREATE [OR REPLACE] TRIGGER 트리거 이름 BEFORE|AFTER

트리거 이벤트  ON 테이블이름
[FOR EACH Row]

[WHEN (condition)]

PL/SQL 블록

 

트리거의 종류

문장트리거(Statement-Level Trigger)와 행트리거(Row-Level Trigger)가 있으며 FOR EACH ROW 옵션을 사용하면 행트리거, 사용하지 않으면 문장트리거가 된다.

문장트리거는 단 한번 실행되며 컬럼의 데이터 값에 상관없이 그 칼럼의 변화가 일어남을 감지하여 실행되는 트리거 반면에 행트리거는 컬럼의 각각의 데이터행에 변화가 생길때마다 실행되며 그 데이터 행의 실제값을 제어할 수 있다.

 

예제) 업데이트문을 이용한 BEFORE UPDATE 행트리거를 보자.

사용자 삽입 이미지

실행 결과
사용자 삽입 이미지


[참고] 생성된 트리거 보는 법
          SQL>SELECT * FROM all_objects WHERE OBJECT_TYPE='TRIGGER';
Posted by 원철연(체르니)
,
사용자 삽입 이미지


사용 테이블을 다음과 같다.(SCOTT으로 접속하면 디폴트로 깔린 EMP 테이블을 그대로 재생성한 테이블)
사용자 삽입 이미지
생성한 프로시저
사용자 삽입 이미지
위에 보는 바와 같이 EXCEPTION 절을 이용해서 발생가능한 에러에 대한 처리를 지정해주고
해당 에러가 발생했을 때 표시해주도록 하였음.

사용자 삽입 이미지

본 예제에서는 실제 위에 코딩한 에러가 발생한 상황을 도출하도록 처리하지는 않았다.
하지만 코딩을 하다보면 에러는 필연적으로 발생하는 것 같다.
구미에 맞게 수정하여 사용하시길 바라며..
프로시저 생성시 에러가 발생하면
 
SQL>show error 를 해보는 것도 문자를 잘못쓰거나 쉼표를 빼먹든지 하는 경우. 도움이 될 것이다.

위의 코드는 내 나름대로 코딩하고 실행결과를 토대로 작성하였으나 효율적인 코딩이라고는
말할 수 없고 효율적인 에러처리 루틴도 추가하여 보다 좋은 코딩으로 만드는 것은 독자들의 몫이라 생각하며..
이만..
Posted by 원철연(체르니)
,
사용자 삽입 이미지

단순하기 생각하면 위와 같이 하드코딩(?)하면 되지만 아래와 같이 프로시져로 작성하여 원하는 문자를 입력받아서 출력하는 스크립을 만들어 보았다.
사용자 삽입 이미지

실행결과
기본
사용자 삽입 이미지

응용
사용자 삽입 이미지

위와 같이 사용자가 원하는 문자를 입력받아 출력하는 프로시져를 간단하게 만들어 보았다.
그럼..



'컴퓨터 관련 무료강좌 > 오라클(ORACLE)' 카테고리의 다른 글

ORACLE-커서사용하기  (0) 2008.04.30
ORACLE-구구단구하기, 두 수사이의 누적합 구하기  (0) 2008.04.30
ORACLE-PL/SQL-SP3  (1) 2008.04.28
ORACLE-SP사용하기2  (1) 2008.04.28
ORACLE-FUNCTION  (0) 2008.04.28
Posted by 원철연(체르니)
,
사용자 삽입 이미지

위와 같은 테이블에서 홍길동이라는 사람의 전체 레코드를 표시해주는 %ROWTYPE 데이터형을 다루어 보자.

사용자 삽입 이미지

위와 같이 %ROWTYPE은 하나의 레코드를 받는 데이터형으로 어찌보면 일차원배열의 한 유형이라고
볼 수도 있을 것 같다.

그러면 실행결과를 보자.
사용자 삽입 이미지

이상으로 오늘의 강좌를 마친다..학원 강사님한테 배운 내용은 거의 없군..
나중에 정리를 할까...아무튼 위에 있는 것들은 다 테스트를 하고 올린 것이니...독자분들이
잘 응용해서 실무에 적용하시길 바랍니다...(MSSQL SP보다 복잡한 것 같군..쩝...)
Posted by 원철연(체르니)
,
사용자 삽입 이미지

위에서 보는 바와같이 EMPNO=7788 의 직원번호, 성명, 부서번호를 출력하는 프로시져를 생성하면
사용자 삽입 이미지

위와 같이 작성할 수 있으며 실행결과는 아래와 같다.
사용자 삽입 이미지

이렇게 글을 올리는 사람도 잘은 모르지만 여러 형태로 작성해보고 실행해보면 실력향샹이 있을 거라고 생각하면서 이번 강좌는 여기까지...

'컴퓨터 관련 무료강좌 > 오라클(ORACLE)' 카테고리의 다른 글

ORACLE-특수문자 출력하기  (0) 2008.04.29
ORACLE-PL/SQL-SP3  (1) 2008.04.28
ORACLE-FUNCTION  (0) 2008.04.28
ORACLE-SP사용하기1  (0) 2008.04.28
ORACLE-SELECT문을 이용한 테이블 생성  (0) 2008.04.25
Posted by 원철연(체르니)
,
사용자 삽입 이미지

위의 EMPNO=7499인 직원의 SAL(월급)이 얼마인지 알아오는 FUNCTION을 만들어보자.
사용자 삽입 이미지

위의 SQL문들은 FUNCTIon을 만들고 실행하고 출력하는 전과정을 나타낸 것으로 이제
SQLPLUS에서 처리한 결과를 보면

사용자 삽입 이미지


이상으로 간략하게 함수에 대해서 알아보았다.

'컴퓨터 관련 무료강좌 > 오라클(ORACLE)' 카테고리의 다른 글

ORACLE-PL/SQL-SP3  (1) 2008.04.28
ORACLE-SP사용하기2  (1) 2008.04.28
ORACLE-SP사용하기1  (0) 2008.04.28
ORACLE-SELECT문을 이용한 테이블 생성  (0) 2008.04.25
ORACLE-서브쿼리사용하기  (0) 2008.04.22
Posted by 원철연(체르니)
,

PL/SQL(Procedure Language/SQL)
PL/SQL은 SQL을 확장한 프로그램 언어이다. 이는 데이터 조작 및 조회문장을 포함한
블록구조를 가지며 절차적인 단위로 시행되어진다.

이론적인 것보다는 실제 예제를 먼저 다루면
EMP테이블의 복사본인 EMP_BACK 테이블로 이해를 해보자.

사용자 삽입 이미지
여기서 특정 EMPNO, 여기서는 EMPNO=7369인 사원의 직업(JOB)을 바꾸는 프로시져를 만들어
보자.

사용자 삽입 이미지

형식
CREATE OR REPLACE PROCEDURE SP명
(입력받는 인자들)
IS
BEGIN
          SQL 문
          ---
END SP명;
/


이렇게 생성한 파일을 SQLPULS 환경에서 처리를 하면 아래와 같다.
사용자 삽입 이미지

위와 같이 EXEC(UTE)문을 이용하여 생성한 SP를 실행하면 위와 같이 EMPNO=7369의 JOB을
CLERK->ENGINEER로 변경된 것을 확인할 수 있다.

'컴퓨터 관련 무료강좌 > 오라클(ORACLE)' 카테고리의 다른 글

ORACLE-SP사용하기2  (1) 2008.04.28
ORACLE-FUNCTION  (0) 2008.04.28
ORACLE-SELECT문을 이용한 테이블 생성  (0) 2008.04.25
ORACLE-서브쿼리사용하기  (0) 2008.04.22
ORACLE-SQLPLUS사용하기2  (0) 2008.04.22
Posted by 원철연(체르니)
,