본문 바로가기

프로그래밍/JDBC

JDBC ( SQL )

 

[ 형식 ]

 

CREATE TABLESPACE [TBS_NAME]
DATAFILE '[DATA FILE]' SIZE [데이터파일크기[K | M]]
AUTOEXTEND ON NEXT [증가시 늘어날 크기[K | M]]
MAXSIZE [최대 증가 크기[K | M]]
EXTENT MANAGEMENT LOCAL;

 

-- TABLESPACE 생성 하기 ( SYS 계정 )

 

create tablespace JAVA_DB
datafile 'D:\ORACLE_SRC\JAVADB.ORA' size 50m
autoextend on next 10m maxsize 500m extent management local;

 

TO. 설명

 

JAVA_DB라는 테이블 스페이스를 생성하며 데이타파일에 대한 경로는 D:\ORACLE_SRC\JAVADB.ORA

로 만들어주고, 초기 사이즈는 50MB 로 지정 50MB가 모두 사용시 자동으로 10M 씩 증가 해주고 최대 사이즈는 500MB 지정


-- USER CREATE 유저 생성해주기 ( SYS 계정 )


CREATE USER JAVA
IDENTIFIED BY JAVA
DEFAULT TABLESPACE JAVA_DB
TEMPORARY TABLESPACE TEMP;

 

TO. 설명

 

JAVA라는 유저를 생성하고 , 비밀번호는 JAVA 생성, JAVA 유저에 기본 디폴트 테이블 스페이스는 JAVA_DB이고

임시 테이블 스페이스는 TEMP이다

 

 

-- 권한 주기 ( SYS 계정 )

 

GRANT CONNECT, RESOURCE, CREATE SYNONYM  TO JAVA;

 

 

 

-- 회원 테이블 생성 하기 ( JAVA 계정 )


CREATE TABLE MEMBERS(
              M_ID        NVARCHAR2(10)   NOT NULL,
              M_PASSWORD  NVARCHAR2(10)   NOT NULL,
              M_NAME      NVARCHAR2(3)    NOT NULL,
              M_EMAIL     NVARCHAR2(50)   NOT NULL,
              M_POINTS    NUMBER(7,0)     DEFAULT 1000,
              M_STATE     NUMBER(1,0)     DEFAULT 1,
    -- -1 : 탈퇴  0:비활성  1:활성
              M_LEVEL     NCHAR(1)        DEFAULT 'P',
    -- P:일반회원  A:관리자
              M_REGDATE   DATE            DEFAULT SYSDATE
)TABLESPACE JAVA_DB;

 


-- CONSTRAINTS 제약조건 ( JAVA 계정 )


ALTER TABLE MEMBERS
ADD CONSTRAINT M_ID_PK  PRIMARY KEY(M_ID);

 

To. 설명

 

수정할 테이블 MEMBERS ADD 추가하겠다. 

제약조건을 주겠다 별칭_pk PRIMARY KERY(지정할컬럼)

ALTER TABLE MEMBERS
ADD CONSTRAINT M_EMAIL_UK UNIQUE(M_EMAIL);

 

To. 설명

 

위와 같음

UNIQUE( 지정할컬럼 )
 


  -- CHECK ( JAVA 계정 )


  SELECT * FROM MEMBERS;
  SELECT * FROM USER_TABLES;
  SELECT * FROM USER_TAB_COLS WHERE TABLE_NAME = 'MEMBERS';
  SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME = 'MEMBERS';

 

-- SYNONYM 생성하기 ( JAVA 계정 )


  CREATE SYNONYM M FOR MEMBERS;

  
 
-- 데이터 입력 ( DML )


INSERT INTO M(M_ID, M_PASSWORD, M_NAME, M_EMAIL)
VALUES('HOONZZANG', 'H1234' , '훈짱', 'HOONZZANG@HOONZZANG.COM');


INSERT INTO M(M_ID, M_PASSWORD, M_NAME, M_EMAIL, M_POINTS)
VALUES('YANGJG', 'Y1234' , '양재규', 'YANGJG@YANGJG.COM', 3000);


INSERT INTO M(M_ID, M_PASSWORD, M_NAME, M_EMAIL, M_STATE)
VALUES('KIMTH', 'K1234' , '김태형', 'KIMTH@KIMTH.COM', 0);

 

SELECT * FROM M; // 동의어로 조회


COMMIT;                //커밋 저장

 

-- UPDATE 문 ( JAVA 계정 )

[TABLE 명] SET [ 수정할 컬럼 ] WHERE [ 컬럼 ] = [ 이름 ]

 
UPDATE M SET M_STATE = 1 WHERE M_ID = 'KIMTH';


UPDATE M SET M_STATE = 0 WHERE M_ID = 'KIMTH';


UPDATE M SET M_LEVEL = 'A' WHERE M_ID = 'HOONZZANG';

 

SELECT * FROM M;


COMMIT;

 

-- DELETE 문 ( JAVA 계정 )


DELETE FROM M WHERE M_ID='KIMTH';
ROLLBACK;

 -->> 실제 데이터를 삭제하지 않고 M_STATE 를 -1로 업데이트

UPDATE M SET M_STATE = -1 WHERE M_ID = 'KIMTH';
SELECT * FROM M;

 

-- SELECT 문 정보 검색 ( JAVA 계정 )


SELECT *
FROM M
WHERE M_STATE >= 0;

 

SELECT *
FROM M
WHERE M_STATE < 0;

 

SELECT M_ID, M_NAME, M_LEVEL, M_REGDATE
FROM M
WHERE M_STATE >= 0;


'프로그래밍 > JDBC' 카테고리의 다른 글

JDBC 실습(2)  (0) 2012.07.16
JDBC 초기 설정  (0) 2012.07.16
JDBC 실습(1)  (0) 2012.06.20
JDBC 레코드 검색  (0) 2012.06.20
JDBC 실행 순서 정리  (0) 2012.06.20