저장 프로시저 3

[MaraiaDB] 저장 프로시저 (Stored procedure) 만들기

다음은 MariaDB 공식 문서에서 가져온 저장 프로시저 (Stored procedure) 문법입니다. CREATE [OR REPLACE] [DEFINER = { user | CURRENT_USER | role | CURRENT_ROLE }] PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_body proc_parameter: [ IN | OUT | INOUT ] param_name type type: Any valid MariaDB data type characteristic: LANGUAGE SQL | [NOT] DETERMINISTIC | { CONTAINS SQL | NO SQL | READS SQL DATA | MO..

DB/MySQL 2021.04.23

[MariaDB/MySQL] 저장 프로시저 DEFINER 일괄 변경하는 세 가지 방법

개요MariaDB를 이용하여 프로젝트를 진행하던 중에, 개발하던 DB를 그대로 실 운영서버로 백업하고 복구하여 사용하려고 하는데, 저장 프로시저의 DEFINER 때문에 호출 오류가 발생하였습니다.데이터베이스 오류 Error Number: 1449 The user specified as a definer ('root'@'172.16.112.%') does not exist CALL USP_get_common() 저장 프로시저를 백업 받아서 DEFINER를 변경한 후에, 다시 정의하면 해당 저장 프로시저는 바로 이용할 수 있었으나, 이전한 데이터베이스에 저장 프로시저가 100개가 넘는 터라 일일이 DEFINER를 바꾸어 주는 것은 너무 고된 작업이라 일괄로 한꺼번에 처리할 수 있는 방법은 없는지 알아보고, ..

DB/MySQL 2020.01.30

TADOStoredProc를 통한 저장 프로시저 호출하기

델파이로 C/S 프로그램밍을 하다 보면, SQL 서버의 성능 및 보안 등 여러 유용함으로 저장 프로시저를 많이 사용하게 됩니다. 아래는 ADO의 TADOStoredProc를 통한 저장 프로시저 호출에 대한 부분을 정리하여 보았습니다. ADO가 아닌 다른 경우에도 대동소이할겁니다. 1. 호출 과정 TADOStoredProc 객체를 생성(Create)합니다. 저장 프로시저를 호출하기 위한 여러 속성들, 연결(Connection) 및 저장 프로시저 이름(ProcedureName) 등을 설정합니다. 파라미터를 초기화합니다.(CreateParameter) 저장 프로시저를 실행합니다.(Open / ExecProc) 저장 프로시저가 실행된 결과를 받아서 처리합니다.(RecordCount, Eof, Fields, Mo..

728x90