PHP+MariaDB数据库操作常见问题与解决及基础示例
184 浏览量
更新于2024-09-03
收藏 77KB PDF 举报
“PHP+MariaDB数据库操作基本技巧备忘总结,包括PHP与MariaDB的连接问题、mysqli扩展的加载、数据库及表的创建、插入数据、查询数据等基础操作。”
在PHP开发中,PHP与MariaDB(或MySQL)的配合是常见的数据库操作方式。文章作者由于对Oracle的偏好改变,选择了MariaDB作为数据库系统,因为MariaDB保持了MySQL的开源精神。当搭建好PHP+Apache环境并安装MariaDB后,尝试进行数据库连接时,遇到了"Class 'mysqli' not found"的错误。这个问题通常是因为mysqli扩展未正确加载。解决方法是检查php.ini文件,确保"extension=php_mysqli.dll"这一行没有被注释,并且"extension_dir"配置指向了PHP扩展的正确目录,通常是绝对路径。
在编写PHP代码之前,可以通过`extension_loaded('mysqli')`函数检查mysqli扩展是否已加载,以避免此类错误。接着,文章介绍了如何使用PHP进行基本的数据库操作,例如:
1. 创建数据库与表:
使用SQL语句,首先检查数据库是否存在,如果存在则删除,然后创建新的数据库,接着选择该数据库并创建用户表。示例如下:
```sql
DROP DATABASE IF EXISTS `test`;
CREATE DATABASE `test`;
USE `test`;
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`username` VARCHAR(50) NOT NULL,
`password` VARCHAR(255) NOT NULL
);
```
2. 插入数据:
使用`mysqli_query()`函数执行INSERT语句,将新用户信息插入到表中。例如:
```php
$sql = "INSERT INTO users (username, password) VALUES ('testuser', 'testpass')";
if (!$result = mysqli_query($db, $sql)) {
echo "Error inserting data: " . mysqli_error($db);
}
```
3. 查询数据:
使用`mysqli_query()`获取查询结果,然后通过`mysqli_fetch_assoc()`遍历结果集。例如:
```php
$sql = "SELECT * FROM users WHERE username = 'testuser'";
if ($result = mysqli_query($db, $sql)) {
while ($row = mysqli_fetch_assoc($result)) {
echo "User ID: " . $row['id'] . ", Username: " . $row['username'];
}
} else {
echo "Error in query: " . mysqli_error($db);
}
```
4. 更新数据:
更新用户信息时,使用`UPDATE`语句。例如:
```php
$sql = "UPDATE users SET password = 'newpass' WHERE username = 'testuser'";
if (!mysqli_query($db, $sql)) {
echo "Error updating data: " . mysqli_error($db);
}
```
5. 删除数据:
使用`DELETE`语句删除指定条件的数据。例如:
```php
$sql = "DELETE FROM users WHERE id = 1";
if (!mysqli_query($db, $sql)) {
echo "Error deleting data: " . mysqli_error($db);
}
```
通过以上步骤,开发者可以实现PHP与MariaDB之间的基本交互,完成数据的增删查改操作。对于更复杂的数据库操作,如事务处理、存储过程、索引优化等,开发者还需要进一步学习和掌握更高级的PHP和MariaDB知识。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-03-05 上传
2021-05-03 上传
2019-07-09 上传
2019-03-20 上传
2022-08-04 上传
2023-12-30 上传
weixin_38612139
- 粉丝: 3
- 资源: 885
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查