1. 테이블 만들면서 복사해오기

CREATE table emp as
SELECT employee_id empid, first_name ||' ' ||  last_name name
FROM hr.employees

2. 원래 테이블에다가 select 해서 복사하는 방법

INSERT into emp (empid, name)
SELECT employee_id empid, first_name ||' ' ||  last_name name
FROM hr.employees

3. 자가 복사

INSERT into emp (empid, name)
SELECT empid, name FROM EMP

4. DB백업 방식!

SELECT 'insert into emp2 (empid, name) values (' || employee_id || ',''' ||  first_name || ''');' FROM hr.employees

- SQLGate에서 실행

셀 전체 복사
insert into emp2 (empid, name) values (100,'Steven');
....
insert into emp2 (empid, name) values (107, 'Gietz');

메모장에 붙여 넣기 하고 맨 마지막에 commit; 추가 한다.

aaa.sql 파일로 만든다. C 드라이브에 저장.

- slq 접속.
sql>@C:\\aaa.sql 을 실행한다.

※ 만약에 셀 전체를 해서 SQLGate에서 sql 창을 새로 열어서 복사하고 실행하면 실행 속도가 오래 걸린다!

■ JUnit 이란 독립된 테스트를 할 수 있도록 도와주는 framework이다.

테스트시 권장 사항으로 test 로 시작하는 메서드 이름을 작성한다. 

register() 라는 메서드를 테스트 하려면 testRegister()로 만드는 것이 좋다.

그리고 eclipse의 JUnit 플러그인은 test로 시작된 메서드들을 찾아서 리플렉션을 통해서 테스트를 수행하게 한다.

■ 실습해보기.

1. Java Project를 하나 만든다.

2. Project 이름에서 오른쪽 마우스를 클릭하고 Properties를 클릭한다.

3. Java Build Path를 클릭한다.

4. Libraries 탭을 클릭하고 Add Library를 클릭한다.



5. JUnit 을 선택하고 Next를 클릭.



6. 버전을 선택하고 Finish



7. JUnit3이 추가 된 모습을 확인 할 수 있다.




8. Project 에서 오른쪽 마우스 클릭하고, New에서 JUnit Test Case를 클릭한다.

 

만약 저 위치에 없다면 Other를 클릭하고 Java 폴더 - JUnit 폴더에서 선택하면 된다.



9. Name에 클래스 이름을 입력하고 Finish.



10. 클래스를 작성 한다.

- TestVO.java

- Test.java


11. Test 클래스 이름을 더블클릭하고 오른쪽 마우스를 클릭한 다음에 Run As -> JUnit Test를 실행한다.



테스트가 성공한 모습을 볼 수 있다.



12. 오류가 있는 경우 에러가 발생한다.

오류가 있는 코드를 삽입한 결과.


오류가 있는 메소드에서 에러가 발생한 모습을 볼 수 있다.

JUnit을 사용하면 이렇게 에러가 발생한 곳을 찾을 수 있고, 단계별로 검사를 진행하면서 하면 나중에 큰 문제 없이 프로젝트를 완성할 수 있다.



JDBC 드라이버는 데이타베이스에 맞는 드라이버를 사용해야된다. 

버전이 다를 경우 오류가 발생 할 수 있는데, 무슨 오류인지 몰라서 잡기가 힘들다.

데이타베이스는 그에 맞는 드라이버를 제공한다. 

Oracle Database 10g Express Edition 의 경우

C:\oraclexe\app\oracle\product\10.2.0\server\jdbc\lib 

경로 아래에 두개의 Jar File 이 있다.



ojdbc14_g 파일은 디버깅용으로 속도가 좀 떨어진다.

여기에 있는 Jar File을 가져다가 사용하자.


■ system 계정으로 로그인 해서 user01 만든다.

(SQLGate 사용 또는 오라클 데이타베이스 홈페이지 접속 해서 실행)

CREATE USER USER01 IDENTIFIED BY USER01;

//DBA 권한 부여

GRANT CONNECT, DBA TO USER01;


■ 로그아웃 후 USER01 계정으로 접속한다.

- hr 계정의 employees에서 불러온다.
SELECT employee_id, first_name, last_name
FROM hr.employees;

- first_name과 last_name을 합쳐서 불러온다.
SELECT employee_id, first_name || last_name
FROM hr.employees

- first_name과 last_name 사이에 공백을 넣어서 불러온다.
SELECT employee_id, first_name || '' ||last_name
FROM hr.employees

- first_name과 last_name을 합친 컬럼 명을 name으로 ALIAS(별칭) 한다. name 앞에 AS가 생략됨.(AS name)
SELECT employee_id, first_name ||' ' ||  last_name
name
FROM hr.employees

- emp라는 테이블을 만들면서 hr 계정의 employees 테이블의 데이터들도 불러온다.
CREATE table emp as
SELECT employee_id empid, first_name ||' ' ||  last_name name
FROM hr.employees

- emp 테이블의 데이터 양을 두배로 늘린다. 실행후 107개가 214개가 되어 있음을 확인 할 수 있다.
INSERT INTO emp (empid, name)
SELECT employee_id empid, first_name ||' ' ||  last_name name
FROM hr.employees


Oracle Databae 10g Express Edition 에서 HR 계정을 사용하기 위해서는 잠금을 해제해야 된다.

브라우저 창에서
http://127.0.0.1:8080/apex 나 시작 메뉴의 오라클 메뉴에서 Database 홈페이지로 이동 을 선택해서 관리 창으로 들어간다.

system 계정으로 로그인 한다.(비밀 번호는 오라클 설치시 설정한 번호)

로그인이 성공하면

관리 클릭 -> 데이타베이스 사용자 클릭 해서 들어가면 HR 계정에 자물쇠로 잠겨 있는 모습을 볼 수 있다.



HR 계정을 클릭해서 들어가 보면


계정 상태 에서 잠금 해제됨을 선택하고(암호 입력) 사용자 변경을 누르면 잠금이 해제 된다.

로그아웃을 하고 다시 HR 계정으로 로그인 하면 인사관리와 관련된 테이블들을 볼 수 있다.

※ emp 테이블은 scott 계정에 있다.

접속 : sqlplus sys as sysdba 암호 : MANAGER

@C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\scott.sql

CONNECT SCOTT/TIGER

들어가서 보면 emp 테이블이 만들어져 있다.



+ Recent posts