MySQL과 PHP의 연동
MySQL은 PERL, C, C++, JAVA, PHP 등 다양한 프로그래밍 언어와 매우 원활하게 연동됩니다. 그중에서도 PHP는 웹 애플리케이션 개발에 탁월한 기능을 제공하기 때문에 MySQL과 함께 가장 널리 사용되는 언어입니다.
PHP는 MySQL 데이터베이스에 접속하고, 데이터베이스 내부의 데이터 레코드를 조회·추가·수정·삭제하는 등 다양한 작업을 수행할 수 있는 여러 내장 함수를 제공합니다. 이러한 함수들은 다른 일반적인 PHP 함수를 호출하는 것과 동일한 방식으로 호출하면 됩니다.
PHP MySQL 함수의 기본 형식
MySQL과 함께 사용되는 PHP 함수는 일반적으로 다음과 같은 형식을 따릅니다.
mysql_function(value, value, ...);
함수 이름의 두 번째 부분은 해당 함수 고유의 명칭으로, 보통 함수가 수행하는 작업을 설명하는 단어로 구성됩니다. 아래는 본 튜토리얼에서 사용할 두 가지 대표적인 함수입니다.
mysqli_connect($connect); mysqli_query($connect, "SQL statement");
- mysqli_connect(): MySQL 서버와의 연결을 생성하는 함수입니다.
- mysqli_query(): 연결된 데이터베이스에 SQL 문을 실행하는 함수입니다.
참고: 과거에 사용되던
mysql_*계열 함수는 PHP 5.5부터 지원이 중단(deprecated)되었으며, PHP 7부터 완전히 제거되었습니다. 따라서 현재는mysqli_*확장 또는 PDO(PHP Data Objects)를 사용하는 것이 권장됩니다.
예제
다음 예제는 PHP 코드에서 MySQL 관련 함수를 호출하는 일반적인 문법을 보여줍니다.
<html>
<head>
<title>PHP with MySQL</title>
</head>
<body>
<?php
$retval = mysql_function(value, [value,...]);
if( !$retval ) {
die ( "Error: a related error message" );
}
// Otherwise MySQL or PHP Statements
?>
</body>
</html>위 코드에서 함수 호출 결과를 변수에 저장한 뒤, 실패했을 경우 die() 함수를 통해 오류 메시지를 출력하고 스크립트 실행을 종료하는 패턴이 일반적으로 사용됩니다. 이처럼 반환값을 반드시 확인하는 습관은 데이터베이스 연동 시 발생할 수 있는 오류를 빠르게 진단하는 데 큰 도움이 됩니다.