温馨提示×

PHP数据库存储过程怎样写

PHP
小樊
82
2024-10-24 02:51:39
栏目: 云计算

在 PHP 中,要使用数据库存储过程,首先需要了解如何在数据库中创建存储过程。以下是一个简单的 MySQL 存储过程示例,用于向表中插入数据:

  1. 创建一个名为 test_table 的表:
CREATE TABLE test_table (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255) NOT NULL,
    age INT NOT NULL
);
  1. 创建一个名为 insert_data 的存储过程:
DELIMITER //
CREATE PROCEDURE insert_data(IN p_name VARCHAR(255), IN p_age INT)
BEGIN
    INSERT INTO test_table (name, age) VALUES (p_name, p_age);
END //
DELIMITER ;

在这个例子中,我们创建了一个名为 insert_data 的存储过程,它接受两个参数:p_namep_age。存储过程将这两个参数的值插入到 test_table 表中。

  1. 在 PHP 代码中调用存储过程:
<?php
// 连接到 MySQL 数据库
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_dbname";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 调用存储过程
$name = "John Doe";
$age = 30;
$sql = "CALL insert_data('{$name}', {$age})";

if ($conn->query($sql) === TRUE) {
    echo "新记录插入成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

// 关闭连接
$conn->close();
?>

在这个 PHP 代码示例中,我们首先连接到 MySQL 数据库,然后调用 insert_data 存储过程,将参数 $name$age 的值传递给存储过程。如果存储过程执行成功,我们将输出 “新记录插入成功”,否则将输出错误信息。最后,关闭数据库连接。

0