강원도지사

--book 테이블 생성하기
--CREATE TABLE 문법 활용하기
--NUMBER (2) : 숫자자료를 사용할 껀데 최대 두자리수 숫자
--VARCHAR2(40) : 문자열을 사용할 껀데 최대 40자리 문자열
--테이블마다 PRIMARY KEY가 반드시 하나이상 지정되어야 한다
--PRIMARY KEY는 속성 중에서 모든 데이터를 식별할 수 있는 속성이다

CREATE TABLE Book (
    bookid NUMBER(2) PRIMARY KEY,
    bookname VARCHAR2(40),
    publisher VARCHAR2(40),
    price NUMBER(8)
);



--생성된 book테이블에 데이터 삽입 
-- 문법 : INSERT INTO '테이블명'
--        values('값1', 값2, 값3, ...);
--숫자 자료형에는 ''를 붙이지 않으며 나머지는 반드시 ''붙여야 한다.

INSERT INTO Book VALUES(1, '축구의 역사', '굿스포츠', 7000);
INSERT INTO Book VALUES(2, '축구아는 여자', '나무수', 13000);
INSERT INTO Book VALUES(3, '축구의 이해', '대한미디어', 22000);
INSERT INTO Book VALUES(4, '골프 바이블', '대한미디어', 35000);
INSERT INTO Book VALUES(5, '피겨 교본', '굿스포츠', 8000);
INSERT INTO Book VALUES(6, '역도 단계별기술', '굿스포츠', 6000);
INSERT INTO Book VALUES(7, '야구의 추억', '이상미디어', 20000);
INSERT INTO Book VALUES(8, '야구를 부탁해', '이상미디어', 13000);
INSERT INTO Book VALUES(9, '올림픽 이야기', '심성당', 7500);
INSERT INTO Book VALUES(10,' Olympic Champions', 'Pearson', 13000);



--테이블을 만드는 과정에서 만들긴 했으나 꼬여버려서 통째로 지우고 다시 만들 순 없을까?
--DROP TABLE;

DROP TABLE Book;


--INSERT, UPDATE, DELETE명령어를 수행한 후에는 반드시 COMMIT;을 해줘야 데이터 베이스에 최종 반영이 된다

 

___________________________

SQL/

학생테이블이 있는데 반과 번호중 하나를 프라이머리 키로 하지 못하니 둘다 하나의 프라이머리 키로 하고 싶다면 가장 마지막 문법에 
PRIMARY KEY (반,번호) 를 해야함


컨트롤 + 엔터를 해야지 문법이 실행됨

 

--BOOK테이블 제대로 만들었는지 확인하는 방법 SELECT
--SELECT 문법 형식
--SELECT '속성명'(만약 모든 속성을 출력하고 싶으면 *)
--*의 이름 : 애스터리스크라고 부름
--FROM '테이블명';

SELECT * from book;

CREATE TABLE Book (
    bookid NUMBER(2) PRIMARY KEY,
    bookname VARCHAR2(40),
    publisher VARCHAR2(40),
    price NUMBER(8)
);

INSERT INTO Book VALUES(1, '축구의 역사', '굿스포츠', 7000);
INSERT INTO Book VALUES(2, '축구아는 여자', '나무수', 13000);
INSERT INTO Book VALUES(3, '축구의 이해', '대한미디어', 22000);
INSERT INTO Book VALUES(4, '골프 바이블', '대한미디어', 35000);
INSERT INTO Book VALUES(5, '피겨 교본', '굿스포츠', 8000);
INSERT INTO Book VALUES(6, '역도 단계별기술', '굿스포츠', 6000);
INSERT INTO Book VALUES(7, '야구의 추억', '이상미디어', 20000);
INSERT INTO Book VALUES(8, '야구를 부탁해', '이상미디어', 13000);
INSERT INTO Book VALUES(9, '올림픽 이야기', '심성당', 7500);



--삽입할 때 데이터 순서 바뀌어서 넣어도 똑같이 출력하는 방법

INSERT INTO Book(BOOKID, PUBLISHER, BOOKNAME, PRICE) VALUES(10, 'Pearson', 'Olympic Champions', 13000);
-- pearson과 Olympic champions가 바뀌었다
drop table book;

--숫자는 number
--문자는 varchar2

CREATE TABLE Customer(
custid number(2) PRIMARY KEY,
name VARCHAR2(40),
address VARCHAR2(50),
phone VARCHAR2(20)
);

SELECT * FROM Customer;

INSERT INTO Customer values(1, '박지성', '영국 맨체스터', '000-5000-0001');
INSERT INTO Customer values(2, '김연아', '대한민국 서울', '000-6000-0001');
INSERT INTO Customer values(3, '장미란', '대한민국 강원도', '000-7000-0001');
INSERT INTO Customer values(4, '추신수', '미국 클리블랜드', '000-8000-0001');
INSERT INTO Customer values(5, '박세리', '대한민국 대전', NULL);

DROP TABLE Customer;



--NULL은 따옴표('') 안 붙임
--NULL로 된건 PRIMARY KEY로 하면 안됨

CREATE TABLE Orders(
--숫자는 number로
--문자는 varchar2로

orderid number(2) PRIMARY KEY,
custid number(2),
bookid number(2),
saleprice number(8),
orderdate date(50)
);

select * from Orders;

insert into Orders values(1, 1, 1, 6000, to_date('2020-07-02', 'yyyy-mm-dd'));
insert into Orders values(2, 1, 3, 21000, to_date('2020-07-03', 'yyyy-mm-dd'));
insert into Orders values(3, 2, 5, 8000, to_date('2020-07-03', 'yyyy-mm-dd'));
insert into Orders values(4, 3, 6, 6000, to_date('2020-07-04', 'yyyy-mm-dd'));
insert into Orders values(5, 4, 7, 20000, to_date('2020-07-05', 'yyyy-mm-dd'));
insert into Orders values(6, 1, 2, 12000, to_date('2020-07-07', 'yyyy-mm-dd'));
insert into Orders values(7, 4, 8, 13000, to_date('2020-07-07', 'yyyy-mm-dd'));
insert into Orders values(8, 3, 10, 12000, to_date('2020-07-08', 'yyyy-mm-dd'));
insert into Orders values(9, 2, 10, 7000, to_date('2020-07-09', 'yyyy-mm-dd'));
insert into Orders values(10, 3, 8, 13000, to_date('2020-07-10', 'yyyy-mm-dd'));

DROP TABLE Orders;

commit;

 

핵심

--NUMBER (2) : 숫자자료를 사용할 껀데 최대 두자리수 숫자
--VARCHAR2(40) : 문자열을 사용할 껀데 최대 40자리 문자열
--테이블마다 PRIMARY KEY가 반드시 하나이상 지정되어야 한다
--PRIMARY KEY는 속성 중에서 모든 데이터를 식별할 수 있는 속성이다

profile

강원도지사

@박강원입니다

노력하여 끊임없이 발전하는 사람이 되겠습니다!