본문 바로가기

DB

(54)
oracle , mssql 범위 난수 발생 구문 -- oracle select chr(trunc(dbms_random.value(97, 122), 0)) , chr(trunc(dbms_random.value(97, 122), 0)) , chr(trunc(dbms_random.value(33, 90), 0)) , chr(trunc(dbms_random.value(33, 47), 0)) , chr(trunc(dbms_random.value(48, 57), 0)) , chr(trunc(dbms_random.value(33, 90), 0)) from ANY_TABLE -- mssql select lower(char(cast(round((122-97)*rand()+97, 0) as integer))) + '' + lower(char(cast(round((122..
ORACLE - PK, FK 조회 SELECT AA.COLUMN_ID, AA.COLUMN_NAME, BB.COMMENTS, AA.DATA_TYPE, AA.DATA_DEFAULT, CC.PK, AA.NULLABLE, CC.FK FROM ALL_TAB_COLUMNS AA, ALL_COL_COMMENTS BB, (SELECT A.OWNER, A.TABLE_NAME, A.CONSTRAINT_TYPE, COLUMN_NAME, POSITION, CASE WHEN A.CONSTRAINT_TYPE = 'P' THEN 'Y' END AS PK, CASE WHEN A.CONSTRAINT_TYPE = 'R' THEN 'Y' END AS FK FROM ALL_CONSTRAINTS A, ALL_CONS_COLUMNS B WHERE UPPER (A.OWNER) ..
[MSSQL] oracle multi table column update to sql server -- base oracle UPDATE ( select cu.stat as stat , cs.sys_date as last_update_date , cu.user_id as user_id , cu.sys_date as update_date from table_1 cs , table_2 cu where cs.emp_sabun = cu.user_id ) SET STAT = 'N' , update_date = to_char(sysdate, 'yyyymmdd') where user_id IN ( select distinct expired_user from table_a where trunc(expired_date) = trunc(sysdate) and SYSTEM_NAME IN ('xxxxxx','yyyyyy'..
When meet timeout message in excuting alter table command. (alter table 명령 원격 쿼리 타임아웃) ALTER 대상 테이블의 DATA TYPE 변경 시 데이터가 많을 경우에는 의외로 실행 시간이 오래 걸리는 가끔 타임아웃이 걸려서 진땀나게 하는데요. EXEC sp_configure 'remote query timeout', 0; reconfigure; 원격쿼리 기본 타임아웃을 0을 무한으로 재설정합니다. SSMS 에서 DB에 설정할 수 있으나 재설정 시간이 너무 오래 걸리므로 쿼리로 실행 합니다. ALTER TABLE {{TABLE_NAME}} ALTER COLUMN {{COLUMN_NAME}} {{DATA_TYPE}}; ALTER 구문을 실행합니다. EXEC sp_configure 'remote query timeout', 600; reconfigure; 원격쿼리 기본 타임아웃으로 재설정합니다.
[mssql] sp명으로 정의 가져오기 SELECT OBJECT_NAME(object_id) AS sp_name, OBJECT_DEFINITION(object_id) AS sp_context FROM sys.procedures WHERE OBJECT_DEFINITION(object_id) like '%{0}%'
[mssql] 특정 문자열 포함 sp 명 반환 SELECT ROUTINE_NAME FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%{{문자열}}}%' AND ROUTINE_TYPE = 'PROCEDURE' order by ROUTINE_NAME
[mysql] R stored procedure 기본형 CREATE DEFINER=`root`@`%` PROCEDURE `new procedure`(IN `idxParam` CHAR(6) # 파라메터들 , IN `page` INT UNSIGNED , IN `offset` INT UNSIGNED , OUT `total` INT UNSIGNED ) LANGUAGE SQL NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT '' BEGIN IF `offset` IS NULL THEN SET `offset` = 2; END IF; IF `page` IS NULL THEN SET `page` = 0; ELSE SET `page` = `page` * `offset`; END IF; #상세보기 IF `idxParam..
[mysql] C/U/D stored procedure 기본형 CREATE DEFINER=`root`@`%` PROCEDURE `new procedure`(IN `procTypeParam` VARCHAR(20) , IN `idxParam` INT , OUT `identity_idx` INT , OUT `error_code`INT , OUT `error_message`VARCHAR(1000) ) BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @error_code = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET `error_code` = @error_code; SET `error_message` =..