database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 30327 게시물 읽기
No. 30327
mysql 커서 질문입니다.
작성자
김현철(xion34)
작성일
2012-09-20 08:56
조회수
8,478

특정 스키마(TTMS)에서 모든 테이블을 조회하여 prj_id가 XXX인 레코드를 모두 삭제하고 싶습니다.
프로젝트 삭제시, 관련된 테이블항목을 모두 삭제하고 싶습니다.
아래처럼 프로시져를 만들었는데, Error Code: 1146이 뜨네요.
고수님들의 도움을 요청드립니다.

프로시져가 아니고 그냥 쿼리로도 아래 내용과 동일한 효과를 얻을 수 있는지요?

-- --------------------------------------------------------------------------------
-- Routine DDL
-- Note: comments before and after the routine body will not be stored by the server
-- --------------------------------------------------------------------------------
DELIMITER $$

CREATE DEFINER=`root`@`%` PROCEDURE `remove_project`(project_id varchar(45))
BEGIN
        DECLARE table_name VARCHAR(45);
        DECLARE done INT DEFAULT false;
        DECLARE cursor_tables CURSOR FOR
        SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'TTMS' GROUP BY TABLE_NAME;
        DECLARE CONTINUE HANDLER FOR NOT FOUND SET done := true;
        OPEN cursor_tables;
               
    delete_loop : LOOP
        FETCH cursor_tables INTO table_name;
        IF done THEN
            LEAVE delete_loop;
        END IF;
        DELETE FROM table_name WHERE prj_id = project_id;
    END LOOP;
       
        CLOSE cursor_tables;
END

[Top]
No.
제목
작성자
작성일
조회
30330My.ini 설정에 관하여 질문 드리겠습니다 ^^ [2]
최병길
2012-09-25
9521
30329조인 알고리즘 관련 질문 [3]
정호영
2012-09-24
8747
30328left join sum 하기 중복제거 [2]
김양훈
2012-09-20
11884
30327mysql 커서 질문입니다.
김현철
2012-09-20
8478
30326load data infile 사용시 변수사용 방법
이중희
2012-09-18
8092
30325Not Null 로 했는데 데이타가 들어 가는 문제 문의 입니다 [1]
조대길
2012-09-15
8298
30324mysql 패치 여부 판단할수 있는 쿼리나 명령어 있나요? [1]
이송천
2012-09-14
7693
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다