티스토리 뷰

It

ORACLE 계정생성 권한부여 (SQL 언어)

Torrent green93 2022. 8. 14. 23:30
반응형

> (테스트 유저 생성을 위해) admin계정으로 접속 $ sqlplus “/as sysdba”

> startup (DB 시작)

SQL> sqlplus ”/as sysdba” (관리자계정으로 접속)

Connected to an idle instance. <== DB 가 idle 상태임을 알려주고 있다.

SQL> startup (DB 시작)

ORACLE instance started.

>create user 유저명 identified by 비밀번호;

SQL> create user kwi identified by kwi;

>권한 부여 (생성한 계정에 권한을 부여하여야 접근 및 사용(DDL,DML 등) 할 수 있다)

SQL> grant connect, resource, dba to kwi;

>모든 계정을 확인

SQL>SELECT * FROM all_users;

>계정 삭제 (CASCADE를 추가하여 관련된 스키마 모두 삭제후 사용자를 삭제)

SQL>DROP USER kwi CASCADE;

kwi 아이디 다시 만들고 > (푸티 oracle/xxxx로 로그인하여) kwi/kwi로 로그인

SQL> sqlplus “/as sysdba”

SQL> stratup

SQL> exit

[oracle@localhost ~]$ sqlplus kwi/kwi ( test유저로 접속시 > sqlplus test/test )



(실습을 위해 사전에 미리 쿼리문을 실행해두었다.)

현재 접속한 DB계정에 생성된 모든 테이블 이름 확인

> select * from tab;

(student)테이블 구조 정보 확인

> desc student = ( describe student )

(department) 테이블의 모든 칼럼에 저장된 데이터 출력

> select * from department; =( select deptno, dname, college, loc from department; )



SQL 명령문의 표준 형식 - [ ] : 생략가능

SELECT [DISTINCT] { * | column [alias]....}

FROM table

[WHERE condition]

[GROUP BY group_by_expression]

[HAVING group_condition]

[ORDER BY column]

  • SQL 명령문에서는 대소문자를 구분하지 않는다. 하지만 키워드는 주로 대문자로 사용하고 테이블 이름,칼럼 이름 등은 소문자로 작성하는것을 권장한다.
  • select 명령문에서 DISTINCT키워드는 중복행을 제거하여 출력하는 기능이다.



SELECT deptno FROM student; 를 DISTINCT 적용

> SELECT DISTINCT deptno FROM student;




칼럼에 대한 별명 부여 (별명에 공백, 특수문자, 대소문자, 한글 포함시 큰따옴표(“”)를 사용 해줘야 한다.)

  1. 칼럼 이름과 별명 사이에 공백 추가
  2. 칼럼 이름과 별명 사이에 AS 키워드를 추가

> SELECT dname dept_name, deptno AS DN FROM department;

> SELECT dname "Department Name", deptno "부서 번호#" FROM department;

합성 연산자 ‘||’ 사용

(합성 연산자 : 하나의 칼럼과 다른 칼럼, 산술 표현식 또는 상수 값과 연결하여 하나의 칼럼처럼 출력할 경우에 사용하는 연산자)

> SELECT studno || ' ' || name "Student" FROM student;




산술 연산자 사용

(산술연산자는 날짜 또는 숫자 타입으로 지정된 칼럼에만 사용할 수 있다)



> SELECT name, weight*2.2 AS weight_pound from student;

> SELECT name, sal, sal*12+100 FROM professor;

반응형