인기 있는 프로그래밍 언어인 PHP는 데이터베이스 작업을 위한 다양한 도구와 방법을 제공하며, 그 중 가장 일반적으로 사용되는 것은 SQL(Structured Query Language) 문입니다. SQL은 관계형 데이터베이스(RDBMS)에 액세스하고 관리하는 데 사용되는 언어로, 테이블, 행, 열을 조작하여 데이터를 저장하고 검색할 수 있습니다. 다음은 PHP에서 SQL 문을 사용하는 방법을 소개합니다.
SQL 문을 사용하기 전에 먼저 데이터베이스에 연결해야 합니다. PHP에 내장된 mysqli(MySQL Improved Extension) 또는 PDO(PHP Data Objects)를 사용하여 구현할 수 있습니다:
1.1 mysqli 연결 방법:
$servername = "localhost"; //数据库主机名 $username = "username"; //数据库用户名 $password = "password"; //数据库密码 $dbname = "myDB"; //连接的数据库 // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检测连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); }
1.2 PDO 연결 방법:
$servername = "localhost"; //数据库主机名 $username = "username"; //数据库用户名 $password = "password"; //数据库密码 $dbname = "myDB"; //连接的数据库 try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式为异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "连接成功"; } catch(PDOException $e) { echo "连接失败: " . $e->getMessage(); }
있습니다. 많은 SQL 문은 테이블의 데이터를 쿼리하는 데 사용됩니다. 다음은 몇 가지 일반적인 SQL 문입니다.
다음은 mysqli와 PDO를 사용하여 데이터를 쿼리하는 예입니다.
2.1 mysqli를 사용하여 데이터 쿼리:
$sql = "SELECT id, name, email FROM users"; $result = $conn->query($sql); if ($result->num_rows > 0) { // 输出数据 while($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>"; } } else { echo "0 结果"; }
2.2 PDO를 사용하여 데이터 쿼리:
$sql = "SELECT id, name, email FROM users"; $stmt = $conn->prepare($sql); $stmt->execute(); $result = $stmt->setFetchMode(PDO::FETCH_ASSOC); foreach($stmt->fetchAll() as $row) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>"; }
테이블에 새 데이터를 삽입할 때 , INSERT INTO 문을 사용합니다. 새로운 데이터를 삽입하는 기본 형식은 다음과 같습니다.
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
다음은 mysqli와 PDO를 사용하여 데이터를 삽입하는 예입니다.
3.1 mysqli를 사용하여 데이터 삽입:
$sql = "INSERT INTO users (name, email, password) VALUES ('John Doe', 'john@example.com', '123456')"; if ($conn->query($sql) === TRUE) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; }
3.2 PDO를 사용하여 데이터 삽입:
$sql = "INSERT INTO users (name, email, password) VALUES ('John Doe', 'john@example.com', '123456')"; $conn->exec($sql); echo "新记录插入成功";
Update 데이터를 검색하려면 UPDATE 문을 사용합니다. UPDATE 문의 기본 형식은 다음과 같습니다.
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
다음은 mysqli와 PDO를 사용하여 데이터를 업데이트하는 예입니다.
4.1 mysqli를 사용하여 데이터 업데이트:
$sql = "UPDATE users SET email='john_doe@example.com' WHERE id=1"; if ($conn->query($sql) === TRUE) { echo "记录更新成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; }
4.2 PDO를 사용하여 데이터 업데이트:
$sql = "UPDATE users SET email='john_doe@example.com' WHERE id=1"; $conn->exec($sql); echo "记录更新成功";
데이터 삭제 , DELETE 문을 사용합니다. DELETE 문의 기본 형식은 다음과 같습니다.
DELETE FROM table_name WHERE condition;
다음은 mysqli와 PDO를 사용하여 데이터를 삭제하는 예입니다.
5.1 mysqli를 사용하여 데이터 삭제:
$sql = "DELETE FROM users WHERE id=1"; if ($conn->query($sql) === TRUE) { echo "记录删除成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; }
5.2 PDO를 사용하여 데이터 삭제:
$sql = "DELETE FROM users WHERE id=1"; $conn->exec($sql); echo "记录删除成功";
요약: 언제 PHP 및 SQL 문 사용 이 작업을 수행할 때 SQL 주입을 방지하도록 주의해야 합니다. mysqli의 준비된 문이나 PDO의 준비된 문을 사용하면 SQL 주입 공격을 피할 수 있습니다. 그러나 mysqli나 PDO를 사용하여 데이터베이스를 운영하는 것은 데이터베이스 보안을 보장할 수 있으며, MySQL 애플리케이션을 작성할 때에는 프로그램과 데이터베이스 간의 부담을 줄이기 위해 PDO나 mysqli를 최대한 활용하는 것이 좋다.
위 내용은 PHP에서 SQL 문을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!