작성한 트리거를 삭제할 수 있습니다. 트리거 삭제 또한 기존에 익숙한 DROP 명령을 통 하여 삭제할 수 있습니다.
| 쿼리 문법 |
DROP TRIGGER 트리거명;
23.3.1 쿼리 실습
기존에 실습한 트리거를 삭제해 보도록 합니다.
| 예제 쿼리 |
drop trigger backup_mem;
| 콘솔 실습 화면 |
mysql> drop trigger backup_mem;
Query OK, 0 rows affected (0.00 sec)
23.3.2 PHP 실습
PHP 코드를 통하여 트리거 삭제 메서드를 만들어 봅니다.
| PHP 예제 | mysql.class.php 파일에 메서드 예제를 추가합니다.
// 생성한 트리거를 삭제합니다.
public function dropTrigger($name)
{
if ($name){
$queryString = "DROP TRIGGER $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] 트리거명을 적어주세요.");
}
}
예제 파일 | tri-03.php
<?php
include "dbinfo.php";
include "mysql.class.php";
// ++ Mysqli DB 연결.
$db = new JinyMysql();
$name = "backup_mem";
if($db->dropTrigger($name)){
echo $name." 트리거 삭제성공! <br>";
if($rowss = $db->showTriggers()){
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 TRIGGER backup_mem
트리거 삭제!
backup_mem 트리거 삭제성공!
쿼리성공] SHOW TRIGGERS
backup_mem 트리거를 찾을 수 없습니다.