阅读量:0
在 PHP 中,要使用数据库存储过程,首先需要了解如何在数据库中创建存储过程。以下是一个简单的 MySQL 存储过程示例,用于向表中插入数据:
- 创建一个名为
test_table
的表:
CREATE TABLE test_table ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, age INT NOT NULL );
- 创建一个名为
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_name
和 p_age
。存储过程将这两个参数的值插入到 test_table
表中。
- 在 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
的值传递给存储过程。如果存储过程执行成功,我们将输出 “新记录插入成功”,否则将输出错误信息。最后,关闭数据库连接。