DataBase
-
시노님(SYNONYM) 이란?오라클(Oracle) 객체(테이블, 뷰, 시퀀스, 프로시저)에 대한 대체 이름을 의미한다.실제로 그 객체를 사용하는게 아닌 객체를 직접적으로 참조하여 사용한다.보통 다른 유저(계정)의 객체를 참조할 때 사용한다. 본인은 DBA 가 아니므로 틀릴 수 있습니다. 직접적으로 겪어본 바 보통 보안상 이유로 시노님을 사용하는걸로 보인다. 특정 2개의 계정이 있다. 하나는 관리자 계정 또 하나는 특정 유저의 계정이다.관리자 계정은 수정, 삭제 등 모든 권한이 존재한다.모든 사람이 관리자 계정을 사용하게 되면 문제가 발생할 수 있다. 이러한 문제로 관리자 계정을 사용하지 않고 특정 유저의 계정을 하나 만들어 관리자 계정의 테이블에 접근이 가능하도록 시노님(특정 유저의 테이블 참조)을 준다..
Oracle 시노님(SYNONYM)시노님(SYNONYM) 이란?오라클(Oracle) 객체(테이블, 뷰, 시퀀스, 프로시저)에 대한 대체 이름을 의미한다.실제로 그 객체를 사용하는게 아닌 객체를 직접적으로 참조하여 사용한다.보통 다른 유저(계정)의 객체를 참조할 때 사용한다. 본인은 DBA 가 아니므로 틀릴 수 있습니다. 직접적으로 겪어본 바 보통 보안상 이유로 시노님을 사용하는걸로 보인다. 특정 2개의 계정이 있다. 하나는 관리자 계정 또 하나는 특정 유저의 계정이다.관리자 계정은 수정, 삭제 등 모든 권한이 존재한다.모든 사람이 관리자 계정을 사용하게 되면 문제가 발생할 수 있다. 이러한 문제로 관리자 계정을 사용하지 않고 특정 유저의 계정을 하나 만들어 관리자 계정의 테이블에 접근이 가능하도록 시노님(특정 유저의 테이블 참조)을 준다..
2025.01.22 -
WITH RECURSIVE 메모리상에 가상테이블을 생성하여 쿼리문을 수행할 수 있다. 생성한 가상테이블에서 필요한 데이터를 추출할 수 있다. 실제로 테이블을 생성하거나 INSERT 문을 통해 데이터를 삽입하지 않아도 된다. WITH RECULSIVE 테이블명 AS( SELECT 컬럼 FROM 테이블명 WHERE 조건 (비반복문) UNION ALL SELECT 컬럼 FROM 테이블명 WHERE 조건 (반복문) ) SELECT 컬럼 FROM 테이블명 1. SELECT 컬럼 FROM 테이블명 WHERE 조건 (비반복문) WITH RECURSIVE 안의 첫번째 SELECT 문은 비반복문이다. 보통 초기값을 세팅할때 사용하며 RECURSIVE 문을 사용할때는 필수적으로 적어야한다. 2. UNION ALL 비반복문..
Mysql 재귀 쿼리(RECURSIVE)WITH RECURSIVE 메모리상에 가상테이블을 생성하여 쿼리문을 수행할 수 있다. 생성한 가상테이블에서 필요한 데이터를 추출할 수 있다. 실제로 테이블을 생성하거나 INSERT 문을 통해 데이터를 삽입하지 않아도 된다. WITH RECULSIVE 테이블명 AS( SELECT 컬럼 FROM 테이블명 WHERE 조건 (비반복문) UNION ALL SELECT 컬럼 FROM 테이블명 WHERE 조건 (반복문) ) SELECT 컬럼 FROM 테이블명 1. SELECT 컬럼 FROM 테이블명 WHERE 조건 (비반복문) WITH RECURSIVE 안의 첫번째 SELECT 문은 비반복문이다. 보통 초기값을 세팅할때 사용하며 RECURSIVE 문을 사용할때는 필수적으로 적어야한다. 2. UNION ALL 비반복문..
2022.08.30 -
SQL의 join에서 on 절과 where 절의 차이점은 join 하는 범위 및 결과가 다르다. 예시로 아래 m_user, m_right 2개의 테이블이 있다. Table 1 - m_user Table 2 - m_right 보면 겹치는 내용이 right_seq, site_code 2개 컬럼이 있다. 1. LEFT OUTER JOIN, ON 절에 AND 연산 조건 // LEFT OUTER JOIN, ON 절에 AND 연산 조건 select mu.u_id, mu.u_email, mr.right_seq, mr.site_code from m_user mu LEFT OUTER JOIN m_right mr ON mu.site_code = mr.site_code AND mr.right_seq = 2; 위 내용을 보면..
[SQL] JOIN ON 절과 WHERE 절 차이SQL의 join에서 on 절과 where 절의 차이점은 join 하는 범위 및 결과가 다르다. 예시로 아래 m_user, m_right 2개의 테이블이 있다. Table 1 - m_user Table 2 - m_right 보면 겹치는 내용이 right_seq, site_code 2개 컬럼이 있다. 1. LEFT OUTER JOIN, ON 절에 AND 연산 조건 // LEFT OUTER JOIN, ON 절에 AND 연산 조건 select mu.u_id, mu.u_email, mr.right_seq, mr.site_code from m_user mu LEFT OUTER JOIN m_right mr ON mu.site_code = mr.site_code AND mr.right_seq = 2; 위 내용을 보면..
2022.05.24 -
기본 데이터베이스 설정 경로 - vi /etc/my.cnf [client] host=localhost user=root password=rbsl401095 database=wizdb 추가 * CentOS 7 : systemctl restart mariadb 확인 : mysql -u root -p : 패스워드 입력 바꼈다.
MariaDB 기본 데이터베이스 설정(Default Database)기본 데이터베이스 설정 경로 - vi /etc/my.cnf [client] host=localhost user=root password=rbsl401095 database=wizdb 추가 * CentOS 7 : systemctl restart mariadb 확인 : mysql -u root -p : 패스워드 입력 바꼈다.
2021.09.06 -
1. MariaDB 설치를 위한 CentOS 6 repository 확인 - CentOS 6 명령어 실행 : rpm -qa | grep mariadb // rpm 명령어를 통해 MariaDB가 설치되어 있는지 확인 : yum list | grep mariadb //yum list를 통해 MariaDB 리스트 존재 여부 확인 있다면 : yum install -y MariaDB-Server MariaDB-client MariaDB-devel //MariaDB 설치 없다면 MariaDB repository 추가 : cd /etc/yum.repos.d : vi MariaDB.repo 내용 추가 # MariaDB 10.1 CentOS repository list - created 2020-05-25 02:01..
CentOS 6 - MariaDB 설치1. MariaDB 설치를 위한 CentOS 6 repository 확인 - CentOS 6 명령어 실행 : rpm -qa | grep mariadb // rpm 명령어를 통해 MariaDB가 설치되어 있는지 확인 : yum list | grep mariadb //yum list를 통해 MariaDB 리스트 존재 여부 확인 있다면 : yum install -y MariaDB-Server MariaDB-client MariaDB-devel //MariaDB 설치 없다면 MariaDB repository 추가 : cd /etc/yum.repos.d : vi MariaDB.repo 내용 추가 # MariaDB 10.1 CentOS repository list - created 2020-05-25 02:01..
2021.09.06