nugawiki

./categories/server

VIEW 생성·SELECT 권한

업데이트 2026-07-21 조회수

VIEW + SELECT 권한

CREATE VIEW db.user_v AS SELECT * FROM db.sy_user;
CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'PASSWORD';
GRANT SELECT ON db.user_v TO 'appuser'@'localhost';
FLUSH PRIVILEGES;  -- GRANT만 쓰면 보통 불필요

예: 유저·부서 조인 뷰용 SELECT

SELECT U.USER_ID, U.USER_NM, U.AUTH, D.DEPT_ID, D.DEPT_NM
FROM SY_USER U
LEFT JOIN SY_DEPT D ON D.DEPT_ID = U.DEPT_ID AND D.USE_AT = 'Y'
WHERE U.DEL_DT IS NULL AND U.AUTH < '9';

예: 부서 계층 (WITH RECURSIVE)

WITH RECURSIVE DEPT AS (
  SELECT DEPT_ID, DEPT_NM, DEPT_ALL_PATH, UPPER_DEPT_ID, DEPT_STEP, DEPT_ORDR
  FROM SY_DEPT WHERE DEPT_STEP = 1 AND USE_AT = 'Y'
  UNION ALL
  SELECT D.DEPT_ID, D.DEPT_NM, D.DEPT_ALL_PATH, D.UPPER_DEPT_ID, D.DEPT_STEP, D.DEPT_ORDR
  FROM SY_DEPT D
  JOIN DEPT RD ON RD.DEPT_ID = D.UPPER_DEPT_ID
  WHERE D.USE_AT = 'Y'
)
SELECT * FROM DEPT ORDER BY DEPT_ORDR;

./comments