컴공 전공 공부

데이터 베이스 1일차 본문

카테고리 없음

데이터 베이스 1일차

HUFS_COMPUTERPROGRAMER 2023. 2. 21. 07:37

- 스키마 

서로 연관된 표를 grouping하는 디렉토리

사용자를 만들면 사용자에 관한 스키마가 만들어지고 스키마를 관리하는 것이 바로 사람이다.

 

-사용자 생성

관리자 권한으로 실행해야 가능

Enter user-name: sys AS SYSDBA

CREATE USER c##아이디 IDENTIFIED BY 비번;

 

-권한 부여

GRANT DBA TO 아이디

-->최대한의 가장 강력한 권한 부여

 

-테이블 생성

column: 테이블의 가로 행

row : 테이블의 세로 열

 

 

CREATE TABLE topic(

                   id NUMBER NOT NULL --ID값은 반드시 있어야 한다 지정

                   title VARCHAR2(50) NOT NULL,   -- 50글자가 넘어가면 잘림

                   description VARCHAR2(4000) NOT NULL,

                   created DATE NOT NULL 

 

);

table created --> 표 생성됨

 

-현재 계정의 테이블 목록을 보여줌

SELECT * FROM                                              

 

 

- 모든 계정의 테이블 목록을 보여줌

SELECT TABLE_NAME  FROM all_tables  WHERE OWNER = SCOTT;

 

 

-행 추가

INSERT INTO topic 

                (id, title,description ,created)

                VALUES

                 (1,'ORACLE','ORACLE IS...',SYSDATE);

commit;

INSERT INTO topic

                (id, title,description ,created)

                VALUES

                 (1,'MYSQL','MYSQL IS...',SYSDATE);

commit;

INSERT INTO topic

                (id, title,description ,created)

                VALUES

                 (1,'SQL','SQL IS...',SYSDATE);

commit;

SELECT * FROM topic;  -- 추가한 표 확인

 

 

 

- SQL의 의미 (Structured Query Language)

명령어를 통해 데이터베이스 시스템을  제어하여 자동화할 수 있도록 한다. 

이때의 명령어를 SQL이라고 한다. 

 

-행 읽기

SELECT * FROM topic;

-행과 컬럼 제한하기 

SELECT id, title,created FROM topic;

-아이디가 1번인 행만 보기

SELECT *FROM topic WHERE id = 1;

-아이디가 1번보다 큰 행만 보기

SELECT *FROM topic WHERE id > 1;

 

 

-정렬과 페이징

SELECT * FROM topic ORDER BY id DESC;--id 내림차순

SELECT * FROM topic ORDER BY title ASC;-- title 오름차순

 

SELECT * FROM topic 

                   OFFSET 2 ROWS;

--> 2번째 이후의 행들만 가져 오기

 

SELECT * FROM topic

                   OFFSET 0 ROWS;

                    FETCH NEXT 1 ROWS ONLY;

-->0번째 이후 1개 행만 가져오기

-->1행 가져오기