创建一个名为Books的数据库,并在其中建立一个名为book_message的表,字段包括书名、作者、出版社、出版时间和价格。编写一个应用程序,用预处理方式在该数据库中实现增加、删除和修改数据以及查询的基本功能。
时间: 2024-03-15 20:46:50 浏览: 46
首先,需要安装MySQL数据库并创建一个名为Books的数据库。可以使用以下命令:
```
CREATE DATABASE Books;
```
接下来,在Books数据库中创建一个名为book_message的表,可以使用以下命令:
```
USE Books;
CREATE TABLE book_message (
id INT(11) NOT NULL AUTO_INCREMENT,
title VARCHAR(255) NOT NULL,
author VARCHAR(255) NOT NULL,
publisher VARCHAR(255) NOT NULL,
publish_date DATE NOT NULL,
price DECIMAL(10, 2) NOT NULL,
PRIMARY KEY (id)
);
```
上述命令创建了一个包含书名、作者、出版社、出版时间和价格字段的book_message表。其中,id是主键,用于唯一标识每一本书。
接下来,可以使用预处理方式在该数据库中实现增加、删除和修改数据以及查询的基本功能。下面是一个示例代码,用于添加一本新书:
```
// 连接数据库
$conn = new mysqli('localhost', 'root', 'password', 'Books');
// 准备预处理语句
$stmt = $conn->prepare('INSERT INTO book_message (title, author, publisher, publish_date, price) VALUES (?, ?, ?, ?, ?)');
// 绑定参数并执行语句
$stmt->bind_param('ssssd', $title, $author, $publisher, $publish_date, $price);
$title = 'Java编程思想(第4版)';
$author = 'Bruce Eckel';
$publisher = '机械工业出版社';
$publish_date = '2007-06-01';
$price = 99.00;
$stmt->execute();
// 关闭连接
$stmt->close();
$conn->close();
```
上述代码中,首先连接到数据库,然后准备一个预处理语句,使用bind_param方法绑定参数并执行语句,最后关闭连接。
类似地,可以使用预处理方式实现删除、修改和查询功能。需要注意的是,在执行查询时,需要使用bind_result方法绑定结果变量,并使用fetch方法获取每一行数据。
总的来说,预处理方式可以有效地防止SQL注入攻击,并提高程序的安全性和性能。
阅读全文