본문 바로가기
나중에 내가 보려고 기록해두기/오라클

[오라클 11g] 참고용 기본 쿼리

by 고기 2023. 8. 15.

 

1. 계정 생성

-- 계정 생성
create user mhor identified by 1234;

-- 계정 권한 부여
grant connect, resource, dba to mhor;

-- 커밋
commit;

 

2. 사용자 조회

-- 사용자 조회
select * from all_users;

-- 특정 사용자 조회
select * from all_users where USERNAME='MHOR';

 

3. 모든 테이블 조회

-- 모든 테이블 조회
select table_name from tabs;

-- 예제 테이블 생성
create table a(a varchar2(10));
create table b(b varchar2(10));

-- 모든 테이블 조회
select table_name from tabs;

 

4. 테이블 구조 확인

-- 테이블 구조 확인
desc a;
desc b;

describe a;
describe b;

 

5. 변수 사용

-- 변수 입력받기(sql plus)
select * from a where a < &avar;

-- 변수 입력받기(dbeaver)
select * from a where a < (:avar);

---------------------------
-- sql plus에서 변수를 define으로 정의해서 사용할 수도 있다.
-- dbeaver에서는 @set으로 사용할 수 있다는데 외않됄까. 어차피 안쓰니까 상관없지만...
define avar = 1;
select * from a where a < &avar;

 

6. 데이터 삽입 시 반복문 사용 (PL/SQL)

-- PL/SQL
-- sql plus에서 반복문으로 데이터 집어넣기
-- "/"를 마지막에 붙여야 실행됨
DECLARE
    v_counter NUMBER := 1;
BEGIN
    WHILE v_counter <= 30 LOOP
        INSERT INTO a (a) VALUES (v_counter);
        v_counter := v_counter + 1;
    END LOOP;
    COMMIT;
END;
/

select * from a;

-- dbeaver에서 반복문으로 데이터 집어넣기
DECLARE
    v_counter NUMBER := 1;
BEGIN
    WHILE v_counter <= 30 LOOP
        INSERT INTO a (a) VALUES (v_counter);
        v_counter := v_counter + 1;
    END LOOP;
    COMMIT;
END;

select * from a;

 

7. 출력될 행 길이와 페이지 크기 설정 (sql plus)

-- 근데 어차피 sql plus에서 작업할 일은 없어서 몰라도 상관없긴한데...
-- 결과 출력 행의 길이 설정
set linesize 80

-- 한 페이지에 출력될 행 수 설정
-- 페이지에 출력될 행 수라는게 컬럼의 수가 아님에 유의하자
set pagesize 30

 

8. 콘솔 화면 지우기 (sql plus)

-- 이것도 sql plus에서 작업할 일은 없어서 몰라도 상관없긴한데...
-- 콘솔 화면 지우기
clear screen

--------------------
cl(ear) scr(een)

()는 생략해도 됨
cl scr
cl scre
cl screen
cle scr
cle scree
clea scr
clea screen
clear scr
...

댓글