사용자 계정에 부여된 권한조회 Proframe 설치 작업중 로그를 뒤져보니 "ORA-01012: 로그온되지 않았습니다."라는 메시지를 발견하였다. 아래와 같이 'sqlplus' 커맨드를 통해 오라클 db에 접속을 시도 하였으나, 아래와 같은 메시지가 출력됬다. sqlplus TEST/TEST1234@ORCL ERROR: ORA-01045: user TEST_USER lacks CREATE SESSION privilege; logon denied 오라클 권한 문제였다. 사용자에게 접속권한이 없었던 것이다. 권한조회하는 방법은 아래와 같다. > SELECT GRANTEE, PRIVILEGE, ADMIN_OPTION FROM DBA_SYS_PRIVS; > SELECT USERNAME, PRIVILEGE, AD..
데이터베이스: 10g 출시 1 오류 코드: SQL-02112 설명: SELECT..INTO가 너무 많은 행을 리턴합니다 원인: SELECT ... INTO 문이 제공된 호스트 변수에 저장할 수있는 것보다 많은 행을 리턴했습니다. 조치: 가능한 해결책은 3 가지입니다. 1. 사전 컴파일러 옵션 select_error = no를 사용하십시오. 2. 배열 차원이 더 큰 호스트 변수를 선언하십시오. 3. select.에 대한 커서 또는 커서 변수를 선언하십시오. 데이터베이스: 10g 출시 1 오류 코드: SQL-02112 설명: SELECT..INTO returns too many rows 원인: A SELECT...INTO statement returned more rows than can be stored ..
계층형 쿼리 - 계층형 구조는 상하 수직관계의 트리 형태 구조 - 회사에 있는 부서, 대학교에 있는 학과 이런 관계 즉 계층형 쿼리는 테이블에 있는 데이터를 계층형 구조로 반환하는 쿼리를 뜻함. START WITH ~ CONNECT BY 절로 표현이 가능하다. (시작조건) (연결조건) 예제) -- 테이블 생성 CREATE TABLE TAB1(EMP_ID VARCHAR(10), MGR_ID VARCHAR(10), DPET_NM VARCHAR(10)); INSERT INTO TAB1 VALUES ('A','','HEADROOM'); INSERT INTO TAB1 VALUES ('B','A','HEADROOM'); INSERT INTO TAB1 VALUES ('C','A','HEADROOM'); INSERT ..
sqlplus에서 백스페이스키가 제대로 작동이 되지 않아 난해한 경우가 있었다. 오타가 나올때 어쩔줄 몰라 일단 엔터치고 다시 쿼리를 작성한 경우도 있었다. 간단한 방법은 ctrl키를 누른채 백스페이스키를 누르면 제대로 작동을 한다. 이것이 귀찮다면 환경변수에 적용해주는 방법도 있다. AIX인 경우, .profile에, linux환경인 경우 .bash_profile에 동일하게 아래와 같은 커맨드를 기입하면 된다. stty erase "^H" 환경파일 적용하고 sqlplus를 실행하게 되면 정상적으로 백스페이스가 작동되는것을 확인 할수가 있다. 또다른 방법으로는, 현재 세션에서만 적용하고 싶다면 sqlplus 커맨드 창에서 아래와 같은 커맨드를 입력하면 된다. SQL> host stty erase ^H
테이블 스페이스 생성 : ex) CREATE TABLESPACE PFM4C DATAFILE '/home/oracle/db/oradata/orcl/pfm4c.dbf' SIZE 2048M AUTOEXTEND ON NEXT 4M MAXSIZE UNLIMITED LOGGING PERMANENT EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 8K SEGMENT SPACE MANAGEMENT MANUAL FLASHBACK ON; size 옵션 - 초기 데이터파일 크기 설정. autoextend 옵션 - 초기 크기 공간을 모두 사용하는 경우 자동으로 파일의 크기가 커지는 기능을 활성화(on) / 비활성화(off , default) 설정한다. next - 데이터파일이 증가하는 단위..
Synonym - 데이터베이스 객체는 고유한 이름을 가지고 있다. - 해당 객체에게 가명을 주는것 (일종의 alias와 비슷하다) - 보안에 용이하다 (다른 유저의 객체를 사용할때 그 이름 그대로 사용하지 않는다.) 문법 CREATE OR REPLACE [PUBLIC / PRIVATE] SYNOYM [사노님명] FOR [객체명] 해당 객체에게 시노님명을 지어주는 쿼리문이다. 예를들어 객체 이름이 EMP라고 하고 , SYNONYM명을 SYNO_EMP 라고 하였을때 Synonym명인 SYNO_EMP라는 명으로 해당 객체명인 EMP 테이블을 조회할수가 있는 것이다. Synonym 응용 현재 계정의 시노님 조회 - SELECT * FROM USER_SYNONYMS 전체 시노님 조회 쿼리 - SELECT * FR..
사용자 계정에 부여된 권한조회 Proframe 설치 작업중 로그를 뒤져보니 "ORA-01012: 로그온되지 않았습니다."라는 메시지를 발견하였다. 아래와 같이 'sqlplus' 커맨드를 통해 오라클 db에 접속을 시도 하였으나, 아래와 같은 메시지가 출력됬다. sqlplus TEST/TEST1234@ORCL ERROR: ORA-01045: user TEST_USER lacks CREATE SESSION privilege; logon denied 오라클 권한 문제였다. 사용자에게 접속권한이 없었던 것이다. 권한조회하는 방법은 아래와 같다. > SELECT GRANTEE, PRIVILEGE, ADMIN_OPTION FROM DBA_SYS_PRIVS; > SELECT USERNAME, PRIVILEGE, AD..