본문 바로가기

DataBase

(13)
[ Oracle ] Oracle merge into 프로젝트를 진행하는 데에 있어서, 또는 버전을 관리하는 과정에 있어서 테이블의 데이터를 삽입하거나 업데이트 해야하는 경우들이 있다. 넣으려는 데이터가 있으면 insert하고 없으면 update하는 것이다. 이런 경우 유용하게 쓰이는 구문이 merge문이다. | 구조 MERTGE INTO 테이블A // 데이터를 insert하거나 update할 테이블 USING 테이블B // 데이터를 가져올 테이블 ON 제약조건 WHEN MATCHED THEN UPDATE문 WHEN NOT MATCHED THEN INSERT문 이해를 쉽게 하기 위해서 예를 들어보겠습니다. 다음과 같은 테이블과 데이터가 있다고 가정합니다. USER_A 테이블 USER_ID (PK) USER_NAME USER_TEL cocomong 코코몽 0..
[ mysql ] merge update insert 프로젝트를 하다보면 oracle로 할 때가 있고 mysql로 할 때가 있다. 하지만 서로 쿼리가 다른 것들이 많다. 그 중 하나가 오늘 포스팅할 개념이다. 먼저 테이블을 생성합니다. | 테이블 생성 CREATE USER(USER_ID VARCHAR(20), USER_NAME VARCHAR(20), USER_TEL VARCHAR(13), PRIMARY KEY(USER_ID) ); 그 다음에, 예시를 위해서 데이터를 넣어보겠습니다. | 데이터 삽입 INSERT INTO USER(USER_ID, USER_NAME, USER_TEL) VALUES('imcodding0616', 'codding', '010-1234-5678'); USER_ID USER_NAME USER_TEL imcodding0616 coddin..
[ Oracle ] 오라클 DB 툴 접속 ORA-06552 ORA-06553 오류 안녕하세요 코띵입니다 :D CentOS에서 오라클 설치 하고 사용자 계정 만든 후 테이블까지 만든 후, DBeaver 라는 데이터베이스 툴로 접속하려고 하자 다음과 같은 에러를 만났습니다. EXP-00008: ORACLE 오류 6552가 발생했습니다 ORA-06552: PL/SQL: Compilation unit analysis terminated ORA-06553: PLS-553: 알 수 없는 문자 집합 이름입니다. 찾아보니, 이는 characterset이 섞여있어서 그렇다고 합니다. 이를 통일 시켜주기 위해서 다음과 같은 sql 문을 실행합니다. charset_update.sql SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER SYSTEM ENABLE RESTRICTED SE..
[ Oracle ] 오라클 사용자 계정 생성 ORA-65056 오류 안녕하세요 코띵입니다 :D 오라클 계정을 생성하는 도중 에러를 만나게 되어서 포스팅을 하려고 합니다 하핫 사용자 계정 생성 문법은 다음과 같습니다. SQL> create user 사용자명 identified by 비밀번호; 예를 들면, 다음과 같습니다. SQL> create user imcodding identified by 1234; 하지만 이럴 경우 다음과 같은 오류가 발생합니다. 1행에 오류: * ORA_65096: 공통 사용자 또는 롤 이름이 부적합합니다. 이는 오라클 12c부터는 공통계정 앞에 c## 키워드를 붙이도록 네이밍 규칙이 바뀌었기 때문입니다. c## 이 붙어야 하는 이유는 CDB(Container DB)와 PDC(Pluggable DB)의 개념이 등장해서라고 합니다. 자세한 개념은 찾..
[ Oracle ] 오라클 한글 깨짐 현상 안녕하세요 코띵입니다 :D CentOS에서 오라클 설치를 완료한 후, SQLPlus를 통해 접속을 했는데, 다음과 같이 한글이 나오지 않는 현상이 발갱했습니다. [oracle@imcodding ~]$ sqlplus "/as sysdba" SQL*Plus: Release 19.0.0.0.0 - Production on 금 6월 12 10:35:34 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. ??? ???: ... 왜 이런 현상이 발생하는 걸까요? 바로 characterset 때문입니다. 오라클 데이터베이스를 생성할 때, .bash_profile에서 미리 NLS_LANG을 지정하지 않는다면 오라클은 US7ASC..

반응형