분류 전체보기(1084)
-
DB/Oracle
2019.11.10
2
[Oracle] 오라클 시노님(Synonym) 사용법 총정리 (생성, 조회, 권한, 삭제)
시노님(Synonym)이란? 데이터베이스 객체는 각자 고유한 이름이 있습니다. 이 객체들에 대한 동의어를 만드는것이 바로 시노님입니다. 한마디로 객체에게 가명을 주는것이라고 생각하면 되며 ALIAS와 비슷합니다. 다만 ALIAS는 1회성인 반면 시노님(Synonym)은 영구적이라고 볼 수 있습니다. 보통 다른 유저의 객체를 참조할 때 많이 사용을 합니다. 실제로 시노님을 사용하는 목적은 다른 유저의 객체를 사용할때 유저의 이름과 객체의 실제이름을 사용하는데 그 두개를 감춤으로써 데이터베이스의 보안을 개선하기위해 사용되어집니다.시노님에는 PUBLIC과 PRIVATE타입이 있습니다. PUBLIC은 모든 사용자가 접근할 수 있고 PRIVATE는 특정사용자에게만 참조가 가능합니다. 시노님(Synonym)생성 -..
-
DB/Oracle
2019.11.07
2
[Oracle] 오라클 시퀀스(Sequence) 사용법 총정리 (생성, 조회, 수정, 삭제)등
시퀀스(Sequence)란? 시퀀스란 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체입니다. 보통 PK값에 중복값을 방지하기위해 사용합니다. 예를들어 게시판에 글이 하나 추가될때마다 글번호(PK)가 생겨야 한다고 해보겠습니다. 만약 100번까지 글 번호가 생성되어있다면 그 다음 글이 추가가 되었을 경우 글 번호가 101으로 하나의 ROW를 생성해주어야 할것입니다. 이때 101이라는 숫자를 얻으려면 기존 글번호중 가장 큰 값에 +1을 하는 로직을 어딘가에 넣어야하는데 시퀀스를 사용하면 이러한 로직이 필요없이 데이터베이스에 ROW가 추가될때마다 자동으로 +1을 시켜주어 매우 편리합니다. 시퀀스(Sequence) 생성 --문법 CREATE SEQUENCE [시퀀스명] INCREMENT BY [증..
-
DB/Oracle
2019.11.06
4
[Oracle] 오라클 인덱스(Index) 사용법 총정리(생성, 조회, 삭제, 리빌드)
인덱스(Index)란? 인덱스는 데이터베이스 테이블에 있는 데이터를 빨리 찾기 위한 용도의 데이터베이스 객체이며 일종의 색인기술입니다. 테이블에 index를 생성하게 되면 index Table을 생성해 관리합니다. 인덱스는 테이블에 있는 하나이상의 컬럼으로 만들 수 있습니다. 가장 일반적인 B-tree 인덱스는 인덱스 키(인덱스로 만들 테이블의 컬럼 값)와 이 키에 해당하는 컬럼 값을 가진 테이블의 로우가 저장된 주소 값으로 구성됩니다. 인덱스(Index) 사용 예시 인덱스 생성 --문법 CREATE INDEX [인덱스명] ON [테이블명](컬럼1, 컬럼2, 컬럼3.......) --예제 CREATE INDEX EX_INDEX ON CUSTOMERS(NAME,ADDRESS); --예제 컬럼 중복 X CR..
-
DB/Oracle
2019.11.05
1
[Oracle] 오라클 샘플 테이블 및 데이터 만들기 (스크립트 제공)
오라클 샘플 테이블 & 데이터 만들기 예제 오라클에서 제공하는 샘플 테이블 및 데이터입니다. 쿼리문 연습용으로 활용하시면 좋습니다. 아래에 있는 스크립트를 복사하여 실행시켜 테이블을 만들고 / 데이터를 넣으시면 됩니다. 혹여나 에러가 나시면 가장 마지막에 있는 테이블 Drop 스크립트를 실행시켜주세요. https://www.oracletutorial.com/getting-started/oracle-sample-database/ 샘플 테이블 ERD 샘플 테이블의 구조는 아래사진과 같으니 참고해주시기 바랍니다. Create Table (테이블 생성) Insert Data (데이터 삽입) Drop Table (테이블 삭제) 스크립트가 길어 텍스트파일로 첨부합니다. 해당 텍스트파일을 다운받으시고 안에있는 SQL..
-
DB/Oracle
2019.11.04
4
[Oracle] 오라클 뷰(View) 사용법 총정리 (생성,조회,수정,삭제)
뷰(View)란 무엇인가? 뷰(View)는 하나 이상의 테이블이나 다른 뷰의 데이터를 볼 수 있게 하는 데이터베이스 객체입니다. 실제 데이터는 뷰를 구성하는 테이블에 담겨 있지만 마치 테이블처럼 사용할 수 있습니다. 또한 테이블 뿐만 아니라 다른 뷰를 참조해 새로운 뷰를 만들어 사용할 수 있습니다. 뷰(View)의 사용 목적 코딩을 하다보면 여러개의 테이블에서 필요한 정보를 뽑아 사용할때가 많습니다. 이때 좀 더 편리하게 사용할 수 있는 방법중의 하나가 바로 뷰입니다. 뷰를 사용하면 복잡한 질의를 쉽게 만들어 줍니다.. 여러테이블의 JOIN과 GROUP BY 같은 같은 복잡한 쿼리를 view로 저장시켜놓으면 다음부터는 저장한 view의 정보만 가져오면 되므로 쉽게 좀 더 편리하게 사용할 수 있습니다. 일..
-
DB/Oracle
2019.11.03
1
[Oracle] 오라클 데이터타입(DataType) 총정리
데이터 타입 데이터 타입이란 컬럼이 저장되는 데이터 유형을 말합니다. 오라클에서 기본적으로 제공하는 기본 데이터 타입과 이 기본데이터 타입을 혼합하여 만들 수 있는 사용자 정의 데이터 타입으로 구분할 수 있습니다. 기본 데이터 타입은 문자형, 실수, 소수, 자료형 등의 여러 데이터를 식별하는 타입입니다. 문자 데이터 타입 데이터타입 설명 CHAR(n) 고정길이 문자 / 최대 2000byte / 디폴트 값은 1byte VARCHAR2(n) 가변길이 문자 / 최대 4000BYTE / 디폴트 값은 1byte NCHAR(n) 고정길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte NVARCHAR(n) 가변길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴..
-
DB/Oracle
2019.11.02
1
[Oracle] 오라클 전체 테이블 목록 / 코멘트 / 컬럼 조회
테이블의 갯수가 점점 많아지다보면 어떠한 기능을 만들때 어떤 테이블을 써야하는지 어떤 테이블을 조인해야하는지 모르는 경우가 많습니다. 이럴때 활용할 수 있는 방법이 전체 테이블 목록을 보면서 찾는법, 코멘트를 찾는법 컬럼을 찾는법등이 있습니다. 오늘은 이러한 방법에 대해 소개해드리려 합니다. 전체 테이블 목록 조회 --전체 테이블 목록 조회 select * from all_all_tables select * from dba_tables select * from all_objects where object_type = 'TABLE' --접속 계정 테이블 조회 select * from tabs select * from user_objects where object_type = 'TABLE' select * ..
-
DB/Oracle
2019.11.01
1
[Oracle] ORA-12505 Listener refused the connection with following error 오류 해결!
오래간만에 오라클과 오라클 디벨로퍼을 설치해서 접속하려는데 에러가 터졌습니다. Listener refused the connection with the following error : ORA-12505, TNS: listener does not currently know of SID given in connect descriptor 이라는 에러인데요. 해석하자면 리스너는 현재 연결 디스크립터에 제공된 SID를 알 수 없어 연결을 거부했습니다. 라는 뜻이네요. 접속 정보가 잘못된 모양입니다. Listener refused the connection with following error 오류 해결! 구글링 해보니 오라클 12c부터는 기본 SID가 orcl이더군요. 하지만 오라클 디벨로퍼에서 기본 접속 SID..
-
DB/Oracle
2019.10.31
2
[Oracle] ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 에러 해결
오래간만에 개인 PC에 오라클을 설치하고 계정을 만들려고 하니 오류메시지가 하나 출력되었습니다.ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 이라는 오류 메시지인데요. 오라클 12c부터는 공통계정앞에 c##을 붙이도록 네이밍 규칙이 바뀌었더군요. C## 키워드가 붙는 이유는 12c 버전부터 등장하는 CDB, PDB 개념 때문이라고 합니다. 11g까지만 사용해봤었던 저로써는 오늘도 하나 배워갑니다. ㅎㅎ; C##을 붙여주니 정상적으로 계정이 만들어집니다. 권한을 줄때도 앞에 C##을 붙여주어야 합니다. 토드나 sql developer 같은 sql 개발툴에 접속할때도 꼭 앞에 C##을 붙여주셔야 합니다. 그렇지 않으면 위와같이 사용자명/비밀번호가 부적합, 로그온할 수 없습니다. 라는 오류 메..
-
DB/Oracle
2019.10.30
20
[Oracle] 오라클 데이터베이스 19C 설치 / 다운로드 방법
오라클은 오라클이라는 회사에서 배포하는 데이터베이스입니다. 아래에 링크된 오라클 공식 홈페이지에서 다운로드하실 수 있습니다. (오라클 회원이 아니라면 다운로드 하실 수 없으니 회원가입은 꼭 해주세요!!) https://www.oracle.com/database/technologies/oracle-database-software-downloads.html Database Software Downloads | Oracle Oracle Database 11g Release 2 Standard Edition, Standard Edition One, and Enterprise Edition 7/13: Patch Set 11.2.0.4 for Linux and Solaris is now available on su..
-
DB/Oracle 2019.11.10 2[Oracle] 오라클 시노님(Synonym) 사용법 총정리 (생성, 조회, 권한, 삭제) 시노님(Synonym)이란? 데이터베이스 객체는 각자 고유한 이름이 있습니다. 이 객체들에 대한 동의어를 만드는것이 바로 시노님입니다. 한마디로 객체에게 가명을 주는것이라고 생각하면 되며 ALIAS와 비슷합니다. 다만 ALIAS는 1회성인 반면 시노님(Synonym)은 영구적이라고 볼 수 있습니다. 보통 다른 유저의 객체를 참조할 때 많이 사용을 합니다. 실제로 시노님을 사용하는 목적은 다른 유저의 객체를 사용할때 유저의 이름과 객체의 실제이름을 사용하는데 그 두개를 감춤으로써 데이터베이스의 보안을 개선하기위해 사용되어집니다.시노님에는 PUBLIC과 PRIVATE타입이 있습니다. PUBLIC은 모든 사용자가 접근할 수 있고 PRIVATE는 특정사용자에게만 참조가 가능합니다. 시노님(Synonym)생성 -..
-
DB/Oracle 2019.11.07 2[Oracle] 오라클 시퀀스(Sequence) 사용법 총정리 (생성, 조회, 수정, 삭제)등 시퀀스(Sequence)란? 시퀀스란 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체입니다. 보통 PK값에 중복값을 방지하기위해 사용합니다. 예를들어 게시판에 글이 하나 추가될때마다 글번호(PK)가 생겨야 한다고 해보겠습니다. 만약 100번까지 글 번호가 생성되어있다면 그 다음 글이 추가가 되었을 경우 글 번호가 101으로 하나의 ROW를 생성해주어야 할것입니다. 이때 101이라는 숫자를 얻으려면 기존 글번호중 가장 큰 값에 +1을 하는 로직을 어딘가에 넣어야하는데 시퀀스를 사용하면 이러한 로직이 필요없이 데이터베이스에 ROW가 추가될때마다 자동으로 +1을 시켜주어 매우 편리합니다. 시퀀스(Sequence) 생성 --문법 CREATE SEQUENCE [시퀀스명] INCREMENT BY [증..
-
DB/Oracle 2019.11.06 4[Oracle] 오라클 인덱스(Index) 사용법 총정리(생성, 조회, 삭제, 리빌드) 인덱스(Index)란? 인덱스는 데이터베이스 테이블에 있는 데이터를 빨리 찾기 위한 용도의 데이터베이스 객체이며 일종의 색인기술입니다. 테이블에 index를 생성하게 되면 index Table을 생성해 관리합니다. 인덱스는 테이블에 있는 하나이상의 컬럼으로 만들 수 있습니다. 가장 일반적인 B-tree 인덱스는 인덱스 키(인덱스로 만들 테이블의 컬럼 값)와 이 키에 해당하는 컬럼 값을 가진 테이블의 로우가 저장된 주소 값으로 구성됩니다. 인덱스(Index) 사용 예시 인덱스 생성 --문법 CREATE INDEX [인덱스명] ON [테이블명](컬럼1, 컬럼2, 컬럼3.......) --예제 CREATE INDEX EX_INDEX ON CUSTOMERS(NAME,ADDRESS); --예제 컬럼 중복 X CR..
-
DB/Oracle 2019.11.05 1[Oracle] 오라클 샘플 테이블 및 데이터 만들기 (스크립트 제공) 오라클 샘플 테이블 & 데이터 만들기 예제 오라클에서 제공하는 샘플 테이블 및 데이터입니다. 쿼리문 연습용으로 활용하시면 좋습니다. 아래에 있는 스크립트를 복사하여 실행시켜 테이블을 만들고 / 데이터를 넣으시면 됩니다. 혹여나 에러가 나시면 가장 마지막에 있는 테이블 Drop 스크립트를 실행시켜주세요. https://www.oracletutorial.com/getting-started/oracle-sample-database/ 샘플 테이블 ERD 샘플 테이블의 구조는 아래사진과 같으니 참고해주시기 바랍니다. Create Table (테이블 생성) Insert Data (데이터 삽입) Drop Table (테이블 삭제) 스크립트가 길어 텍스트파일로 첨부합니다. 해당 텍스트파일을 다운받으시고 안에있는 SQL..
-
DB/Oracle 2019.11.04 4[Oracle] 오라클 뷰(View) 사용법 총정리 (생성,조회,수정,삭제) 뷰(View)란 무엇인가? 뷰(View)는 하나 이상의 테이블이나 다른 뷰의 데이터를 볼 수 있게 하는 데이터베이스 객체입니다. 실제 데이터는 뷰를 구성하는 테이블에 담겨 있지만 마치 테이블처럼 사용할 수 있습니다. 또한 테이블 뿐만 아니라 다른 뷰를 참조해 새로운 뷰를 만들어 사용할 수 있습니다. 뷰(View)의 사용 목적 코딩을 하다보면 여러개의 테이블에서 필요한 정보를 뽑아 사용할때가 많습니다. 이때 좀 더 편리하게 사용할 수 있는 방법중의 하나가 바로 뷰입니다. 뷰를 사용하면 복잡한 질의를 쉽게 만들어 줍니다.. 여러테이블의 JOIN과 GROUP BY 같은 같은 복잡한 쿼리를 view로 저장시켜놓으면 다음부터는 저장한 view의 정보만 가져오면 되므로 쉽게 좀 더 편리하게 사용할 수 있습니다. 일..
-
DB/Oracle 2019.11.03 1[Oracle] 오라클 데이터타입(DataType) 총정리 데이터 타입 데이터 타입이란 컬럼이 저장되는 데이터 유형을 말합니다. 오라클에서 기본적으로 제공하는 기본 데이터 타입과 이 기본데이터 타입을 혼합하여 만들 수 있는 사용자 정의 데이터 타입으로 구분할 수 있습니다. 기본 데이터 타입은 문자형, 실수, 소수, 자료형 등의 여러 데이터를 식별하는 타입입니다. 문자 데이터 타입 데이터타입 설명 CHAR(n) 고정길이 문자 / 최대 2000byte / 디폴트 값은 1byte VARCHAR2(n) 가변길이 문자 / 최대 4000BYTE / 디폴트 값은 1byte NCHAR(n) 고정길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte NVARCHAR(n) 가변길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴..
-
DB/Oracle 2019.11.02 1[Oracle] 오라클 전체 테이블 목록 / 코멘트 / 컬럼 조회 테이블의 갯수가 점점 많아지다보면 어떠한 기능을 만들때 어떤 테이블을 써야하는지 어떤 테이블을 조인해야하는지 모르는 경우가 많습니다. 이럴때 활용할 수 있는 방법이 전체 테이블 목록을 보면서 찾는법, 코멘트를 찾는법 컬럼을 찾는법등이 있습니다. 오늘은 이러한 방법에 대해 소개해드리려 합니다. 전체 테이블 목록 조회 --전체 테이블 목록 조회 select * from all_all_tables select * from dba_tables select * from all_objects where object_type = 'TABLE' --접속 계정 테이블 조회 select * from tabs select * from user_objects where object_type = 'TABLE' select * ..
-
DB/Oracle 2019.11.01 1[Oracle] ORA-12505 Listener refused the connection with following error 오류 해결! 오래간만에 오라클과 오라클 디벨로퍼을 설치해서 접속하려는데 에러가 터졌습니다. Listener refused the connection with the following error : ORA-12505, TNS: listener does not currently know of SID given in connect descriptor 이라는 에러인데요. 해석하자면 리스너는 현재 연결 디스크립터에 제공된 SID를 알 수 없어 연결을 거부했습니다. 라는 뜻이네요. 접속 정보가 잘못된 모양입니다. Listener refused the connection with following error 오류 해결! 구글링 해보니 오라클 12c부터는 기본 SID가 orcl이더군요. 하지만 오라클 디벨로퍼에서 기본 접속 SID..
-
DB/Oracle 2019.10.31 2[Oracle] ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 에러 해결 오래간만에 개인 PC에 오라클을 설치하고 계정을 만들려고 하니 오류메시지가 하나 출력되었습니다.ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 이라는 오류 메시지인데요. 오라클 12c부터는 공통계정앞에 c##을 붙이도록 네이밍 규칙이 바뀌었더군요. C## 키워드가 붙는 이유는 12c 버전부터 등장하는 CDB, PDB 개념 때문이라고 합니다. 11g까지만 사용해봤었던 저로써는 오늘도 하나 배워갑니다. ㅎㅎ; C##을 붙여주니 정상적으로 계정이 만들어집니다. 권한을 줄때도 앞에 C##을 붙여주어야 합니다. 토드나 sql developer 같은 sql 개발툴에 접속할때도 꼭 앞에 C##을 붙여주셔야 합니다. 그렇지 않으면 위와같이 사용자명/비밀번호가 부적합, 로그온할 수 없습니다. 라는 오류 메..
-
DB/Oracle 2019.10.30 20[Oracle] 오라클 데이터베이스 19C 설치 / 다운로드 방법 오라클은 오라클이라는 회사에서 배포하는 데이터베이스입니다. 아래에 링크된 오라클 공식 홈페이지에서 다운로드하실 수 있습니다. (오라클 회원이 아니라면 다운로드 하실 수 없으니 회원가입은 꼭 해주세요!!) https://www.oracle.com/database/technologies/oracle-database-software-downloads.html Database Software Downloads | Oracle Oracle Database 11g Release 2 Standard Edition, Standard Edition One, and Enterprise Edition 7/13: Patch Set 11.2.0.4 for Linux and Solaris is now available on su..