본문 바로가기

DB17

오라클 데이터 마스킹 SELECT REGEXP_REPLACE(USER_NM, '*', 2, 1) AS "이름 마스킹",REGEXP_REPLACE( '240823-1234567' , '*', 9, 0) AS "주민번호 마스킹",REGEXP_REPLACE( '1234567' , '*', 6, 0) AS "여권번호 마스킹",REGEXP_REPLACE( '010-1111-2222' , '^(\d{3})-?(\d{1,2})\d{2}-?\d(\d{3})$', '\1-**\2-*\3') AS "전화번호 마스킹",REGEXP_REPLACE (REGEXP_REPLACE (REGEXP_REPLACE( '111.222.33.444' , '[.]\d{3}', '.***'), '[.]\d{2}', '.**'). '[.]\d{1}', '.*') AS.. 2024. 8. 23.
오라클 DB 공부(DATATYPE) --CHAR 고정 길이 문자열을 저장하고 고정길이보다 적은 값을 입력 시 나머지 공간은 SPACE로 채움 --VHACHAR2 가변 길이 문자열을 저장하고 실제 길이의 값만 저장 --NVARCHAR2 VHARChAR2 바이트 수, NVARCHAR2는 문자열 길이 수 저장할 데이터에 알파벳, 숫자만 들어가는 경우는 VARCHAR2 한글이 포함되는 경우는 NVARCHAR2 권장한다고 함 --NUMVER(P,S) P는 최대 유효 십진 자리수 S는 소수점에서 최하위 유효자리수의 자릿수 2024. 8. 8.
오라클 DB 공부2 (FUNCTION) --오라클 합계 함수 ROLLUP 오라클 ROLLUP은 데이터베이스 질의 언어(SQL)에서 사용되는 기능 중 하나입니다. ROLLUP은 GROUP BY 절과 함께 사용되며, 그룹화된 결과에 대한 합계나 서브 합계를 생성합니다. SELECT region, product, SUM(amount) AS total_sales FROM sales GROUP BY ROLLUP(region, product); -- GROUP BY ROLLUP 을 사용할 때 인자가 두개 이상이 될 때 HAVING GROUPING_ID 함수를 사용하여 불필요한 값을 제거할 때 사용할 수 있다. GROUPING_ID 함수에서 매개변수의 컬럼 순서에 맞게 해당 컬럼이 NULL인 경우 1을 반환하고 한 행을 2진수로 생각하면 된다. --오라클.. 2024. 7. 18.
오라클 오류들 [ ORA-CODE ] 오라클 오류들 [ ORA-CODE ] 1) 에러 메시지 : ORA-00911 문자가 부적합합니다. 해결 방법 작성한 SQL 쿼리에 세미콜론(;), 콤마(,), 마침표(.)등 문자부호를 확인해주세요. 참고 오라클 에러코드 모음 https://blog.naver.com/femgfemg/1201108670502) sqlmapclient operation uncategorized sqlexception for sql []; SQL state [72000]; error code [21561]; ORA-21561: OID generation failed관련 내용hosts 파일에서 127.0.0.1 localhost hostname으로 값이 들어가야 한다.참고 사이트 https://positivemh.tistory... 2024. 6. 19.
오라클 DB 공부(VIEW,PROCEDURE,JOB) -- VIEW 테이블 가상 테이블이며 실제 데이터에 접근하는 게 아니라 사용자가 필요한 부분만 가져와서 사용하는 테이블을 말한다. 데이터의 보안과 접근 가능한 사용자의 편리를 위해서 사용한다. --VIEW 테이블 생성 CREATE OR REPLACE VIEW view_name AS SELECT column1, column2, ... FROM table_name OR REPLACE : 해당 구문을 사용하면 뷰를 수정할 때 DROP 없이 수정이 가능하다. --VIEW 테이블 삭제 DROP VIEW view_name; --VIEW 테이블 상세보기 DESC view_name; --GRNAT GRANT SELECT ON view_name TO 사용자 --프로시저 생성하는 법 CREATE OR REPLACE PRO.. 2024. 5. 17.
오라클 트리거 오라클 트리거 TRIGGER - 오라클 트리거는 데이터베이스의 무결성 유지, 비즈니스 규칙 적용, 데이터 변경 이력 추적 등 다양한 용도로 사용된다. 그러나 성능 및 보안 측면에서 주의가 필요하며, 정확하게 필요한 작업만을 트리거로 실행하여 데이터베이스의 안정성을 확보해야 한다. - 트리거는 다양한 이벤트에 대해 생성될 수 있으며, AFTER INSERT, BEFORE UPDATE, AFTER DELETE 등과 같이 데이터베이스 작업의 어느 지점에서든 실행될 수 있습니다. 또한 FOR EACH ROW와 같은 옵션을 사용하여 각 행에 대해 트리거를 실행할지 여부를 지정할 수 있습니다. - 트리거는 데이터베이스의 복잡성을 증가시킬 수 있으므로 신중하게 사용해야 합니다. 종종 트리거 대신 애플리케이션 레벨에서.. 2024. 4. 4.
SQLD 자격증 개발을 하다 보면 특히 백엔드 쪽은 데이터를 어떻게 관리하고 처리할 수 있는가에 대한 능력이 더 중요한 것을 알게 된다. 나는 거의 모바일앱과 웹 쪽 지식으로 일을 해왔기 때문에 주로 프런트 업무를 맡았다. 과장 직급이 되면서 시스템 전반적으로 이슈가 생겼을 때 함께 확인하고 문제를 개선할 수 있도록 하는 일들이 늘었다.  혼자 막연히 일을 하기보다 어떻게 해결할 수 있는지 회의하고, 또는 가이드를 먼저 줘야 하는 일도 생긴다.  현재는 운영에서 업무를 개발하면서 데이터를 처리하는 비즈니스 로직을 분석하기도 한다. 그러면서 자연스럽게 SQL문을 좀 더 많이 알게 되고 분석을 해야 하는 일이 늘어난다.  일을 하면서 필요한 기술을 좀 더 전문적으로 다룰 수 있으면 해서 SQLD, SQLP와 같은 자격증을 .. 2024. 2. 16.
오라클 DB 공부(FUNCTION) --DECODE 오라클 쿼리에서 가장 많이 사용하는 함수 중에 하나이고 IF ELSE 와 비슷한 기능을 수행 ex) DECODE(칼럼,조건1,결과1,조건2, 결과2, 조건3,결과3...) --INSTR 해당 함수는 문자열에서 문자를 찾으면 문자의 시작 위치를 반환 문자를 찾기 못하면 0을 반환 --SUBSTR 문자열 자르기 함수 SUBSTR(문자열, 시작위치, 길이) SUBSTR(문자열, 위치) 위치부터 끝까지 문자열을 자른다 --LENGTH(글자), LENGTHB(글자) LENGTH함수는 글자수를 계산하고 LENGTHB는 Byte수를 계산하여 반환한다 VARCHAR2의 경우 해당 값이 없는경우(NULL) LENGTH는 비어 있다 --ROWNUM으로 채번할 때 정렬을 안됨 정렬을 하고 싶다면 ORDER .. 2023. 11. 24.
ERWIN 사용법 --ERWIN에서 DATABASE의 ERD 추출하기 1. CA Erwin Data Modeler 7.3 버전 설치 후 실행2. Tools - Reverse Engineer - Logical / physical - Next3. Items To Reverse 전체 선택으로 하고  Infer에 Primary Keys, Relations 선택 Case Conversion of Physical names -> UPPER Case Conversion Of Logical name -> UPPER next 선택4. User name / passworrd 입력 connection string은 tnsnames.ora 에 접속명을 입력 connect 선택5. Logical에서 한글명 나오는 방법 (1) Physical 상.. 2023. 8. 31.
오라클 DB 공부(TABLE) --테이블 Comment 설정 COMMENT ON TABLE [테이블명] IS [Comment]; --컬럼 Comment 설정 COMMENT ON COLUMN [테이블명].[컬럼명] IS '[Comment]'; --테이블 Comment 삭제 COMMENT ON [테이블명] IS ''; --컬럼 Comment 삭제 COMMENT ON COLUMN [테이블명].[컬럼명] IS ''; --테이블 전체 comment 조회 SELECT table_name, table_type, comments FROM USER_TAB_COMMENTS WHERE comments IS NOT NULL; --DELETE 내부적으로 데이터를 하나하나씩 제거하는 과정을 거치기 때문에 처리속도가 길다. 원하는 데이터만 삭제할 때 사용 RO.. 2023. 6. 2.
반응형