Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

PHP로 기존 데이터베이스 삭제하기 – mysql_query 함수 완벽 정리

PHP에서 MySQL 데이터베이스를 삭제할 때는 mysql_query 함수를 사용합니다. 이 함수는 두 개의 매개변수를 받으며, 쿼리 실행에 성공하면 TRUE, 실패하면 FALSE를 반환합니다.

문법(Syntax)

bool mysql_query( sql, connection );

각 매개변수의 의미는 다음과 같습니다.

번호 매개변수 및 설명
1 필수(Required)
MySQL 데이터베이스를 삭제하는 SQL 쿼리입니다. 일반적으로 DROP DATABASE 데이터베이스명; 형태로 작성합니다.
2 선택(Optional)
사용할 MySQL 연결(connection)을 지정합니다. 이 값을 생략하면 mysql_connect()가 가장 마지막에 연결한 연결이 자동으로 사용됩니다.

사용 예제

다음은 mysql_query()를 사용해 데이터베이스를 삭제하는 기본적인 예제입니다.

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';

$conn = mysql_connect($dbhost, $dbuser, $dbpass);

if (! $conn) {
    die('MySQL 연결에 실패했습니다: ' . mysql_error());
}

$sql = 'DROP DATABASE test_db';
$retval = mysql_query($sql, $conn);

if (! $retval) {
    die('데이터베이스 삭제에 실패했습니다: ' . mysql_error());
}

echo "데이터베이스가 성공적으로 삭제되었습니다.";
mysql_close($conn);
?>

주의: 지원 중단(Deprecated)된 함수

mysql_query()는 PHP 5.5부터 공식적으로 지원이 중단되었으며, PHP 7.0부터는 완전히 제거되었습니다. 따라서 최신 환경에서는 아래와 같은 대체 방법을 사용해야 합니다.

  • mysqli 확장: mysqli_query($conn, $sql) 형태로 절차적(procedural) 또는 객체지향 방식 모두 사용 가능합니다.
  • PDO(PHP Data Objects): $pdo->exec("DROP DATABASE test_db")처럼 다양한 데이터베이스를 지원하는 객체지향 인터페이스를 제공합니다.

또한 DROP DATABASE 문은 해당 데이터베이스와 그 안의 모든 테이블·데이터를 영구적으로 삭제하므로, 실행 전 반드시 백업 여부를 확인하고 운영 환경에서는 신중하게 사용해야 합니다.