작성한 프로시저를 삭제할 수 있습니다. 프로시저를 삭제할 때도 기존에 익숙한 DROP 명령어를 이용하여 삭제할 수 있습니다.
| 쿼리 문법 |
DROP PROCEDURE 프로시저명;
22.6.1 쿼리 실습
기존에 실습하던 프로시저를 삭제해 보도록 하겠습니다.
| 예제 쿼리 |
drop procedure mem1;
| 콘솔 실습 화면 |
mysql> drop procedure mem1;
Query OK, 0 rows affected (0.00 sec)
정상적으로 프로시저가 삭제되었습니다.
22.6.2 PHP 실습
PHP 코드를 통하여 작성한 프로시저를 삭제해 봅니다.
| PHP 예제 | mysql.class.php 파일에 메서드 예제를 추가합니다.
// 생성한 프로시저를 삭제합니다.
public function dropProcedure($name)
{
if ($name) {
$queryString = "DROP PROCEDURE $name";
// 쿼리를 전송합니다.
if (mysqli_query($this->dbcon, $queryString)=== TRUE) {
$this->msgEcho("쿼리성공] ".$queryString);
$this->msgEcho(" 프로시저 삭제!");
return true;
} else {
$this->msgEcho("Error] ".$queryString);
return false;
}
} else {
$this->msgEcho("Error] 프로시저명을 적어주세요.");
}
}
예제 파일 | pro-05.php
<?php
include "dbinfo.php";
include "mysql.class.php";
// ++ Mysqli DB 연결.
$db = new JinyMysql();
$name = "mem";
if ($db->dropProcedure($name)) {
echo $name." 프로시저 삭제성공! <br>";
if ($rowss = $db->isProcedure($name)) {
echo "tables fields = ". count($rowss) . "<br>";
for ($i=0;$i<count($rowss);$i++) {
echo $i."=";
print_r($rowss[$i]);
echo "<br>";
}
} else {
echo $name." 프로시저를 찾을 수 없습니다.";
}
} else {
echo "프로시저를 삭제 할 수 없습니다.<br>";
}
?>
화면 출력
mysql connected!
쿼리성공] DROP PROCEDURE mem
프로시저 삭제!
mem 프로시저 삭제성공!
Error] SHOW CREATE PROCEDURE mem
mem 프로시저를 찾을 수 없습니다.