php数据库搜索与存储过程


在PHP中,我们可以使用PDO(PHP Data Objects)库来执行数据库搜索和存储过程。以下是使用PDO执行数据库搜索和存储过程的示例。

首先,创建一个名为users的数据库表:

CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,username VARCHAR(255) NOT NULL,email VARCHAR(255) NOT NULL UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP);

接下来,我们将展示如何使用PDO执行数据库搜索。

数据库搜索
<?php// 数据库连接信息$servername = "localhost";$username = "your_username";$password = "your_password";$dbname = "your_database";try {// 创建PDO连接$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);// 搜索关键词$keyword = "John";// 准备SQL语句$stmt = $conn->prepare("SELECT * FROM users WHERE username LIKE :keyword");$stmt->bindParam(':keyword', $keyword, PDO::PARAM_STR);// 执行查询$stmt->execute();// 获取结果$results = $stmt->fetchAll(PDO::FETCH_ASSOC);// 输出结果foreach ($results as $row) {echo "ID: " . $row['id'] . " - Username: " . $row['username'] . " - Email: " . $row['email'] . "<br>";}} catch (PDOException $e) {echo "Error: " . $e->getMessage();}// 关闭连接$conn = null;?>
存储过程

接下来,我们将创建一个名为insert_user的存储过程,用于向users表中插入新用户。

DELIMITER //CREATE PROCEDURE insert_user(IN p_username VARCHAR(255), IN p_email VARCHAR(255))BEGININSERT INTO users (username, email) VALUES (p_username, p_email);END //DELIMITER ;

现在,我们可以使用PDO调用存储过程来插入新用户。

<?php// 数据库连接信息$servername = "localhost";$username = "your_username";$password = "your_password";$dbname = "your_database";try {// 创建PDO连接$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);// 插入新用户$username = "Jane";$email = "jane@example.com";// 准备调用存储过程$stmt = $conn->prepare("CALL insert_user(:username, :email)");$stmt->bindParam(':username', $username, PDO::PARAM_STR);$stmt->bindParam(':email', $email, PDO::PARAM_STR);// 执行存储过程$stmt->execute();echo "New user inserted successfully!";} catch (PDOException $e) {echo "Error: " . $e->getMessage();}// 关闭连接$conn = null;?>

以上示例展示了如何使用PDO在PHP中执行数据库搜索和存储过程。请确保将your_usernameyour_passwordyour_database替换为您的实际数据库连接信息。


上一篇:hbase数据存储安全性如何保障

下一篇:hbase redis结合与流处理


php
Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器