PHP 笔记——操作MySQL数据库
1. 连接MySQL服务器
mysqli_connect :此函数是该函数的别名: mysqli::__construct()
mysqli mysqli_connect ( [string server [, string username [,
string password [, string dbname [, int port [, string socket]]]]]] )
| 参数 | 说明 |
|---|---|
| server | MySQL服务器地址(host) |
| username | 用户名 |
| password | 密码 |
| dbname | 连接的数据库名称 |
| port | MySQL服务器使用的端口号 |
| socket | UNIX域socket |
<?php
$host = "127.0.0.1"; //MySQL服务器地址
$userName = "root"; //用户名
$password = "root"; //密码
if ($connID = mysqli_connect($host, $userName, $password)){
echo "<script type='text/javascript'>alert('数据库连接成功!');</script>";
}else{
echo "<script type='text/javascript'>alert('数据库连接失败!');</script>";
}
?>
为了屏蔽由于数据库连接失败而显示的不友好的错误信息,可以在 mysqli_connect () 函数前加 “@” 来屏蔽错误提示。
<?php
$host = "127.0.0.1"; //MySQL服务器地址
$userName = "root"; //用户名
$password = "111"; //密码
if ($connID = @mysqli_connect($host, $userName, $password)){
echo "<script type='text/javascript'>alert('数据库连接成功!');</script>";
}else{
echo "<script type='text/javascript'>alert('数据库连接失败!');</script>";
}
?>
2. 选择MySQL数据库
(1)mysqli_connect
$connID = mysqli_connect("127.0.0.1", "root", "111", "mysql");
(2)mysqli_select_db
bool mysqli_select_db ( mysqli $link , string $dbname )
| 参数 | 说明 |
|---|---|
| link | 仅以过程化样式:由mysqli_connect() 或 mysqli_init() 返回的链接标识。 |
| dbname | 数据库名称 |
<?php
$host = "127.0.0.1"; //MySQL服务器地址
$userName = "root"; //用户名
$password = "root"; //密码
$dbName = "mysql"; //数据库名称
//建立与MySQL数据库服务器的连接,并选择数据库
$connID = mysqli_connect($host, $userName, $password);
if(mysqli_select_db($connID, $dbName)){
echo "数据库选择成功!";
}else{
echo "数据库选择失败!";
}
?>
3. 执行SQL语句
mixed mysqli_query( mysqli link, string query [, int resultmode] )
| 参数 | 说明 |
|---|---|
| link | 仅以过程化样式:由mysqli_connect() 或 mysqli_init() 返回的链接标识。 |
| query | sql语句 |
| resultmode |
//连接MySQL服务器,选择数据库
$conn = mysqli_connect("localhost", "root", "root", "stu") or die("连接数据库服务器失败!" . mysqli_error());
//设置数据库编码格式utf8
mysqli_query($conn, "set names utf8");
mysqli_query($conn, "insert into users values('4', '张三', '男', '23')");
mysqli_query($conn, "update users set Name='张三' where Id='1'");
mysqli_query($conn, "delete from users where Id='211789111'");
mysqli_query($conn, "use stu");
mysqli_query($conn, "set names utf8");
$result = mysqli_query($conn, "select * from users");
4. 将结果集返回到数组中
array mysqli_fetch_array ( resource result [, int result_type] )
| 参数 | 说明 |
|---|---|
| result | 由 mysqli_query()函数返回的数据指针 |
| result_type | 设置结果集数组的表达方式。 - MYSQL_ASSOC:关联数组 - MYSQL_NUM:数字数组 - MYSQL_BOTH:默认。同时产生关联和数字数组。 |
<?php
while($myrow = mysqli_fetch_array($result)){
?>
<tr>
<td align="center"><span><?php echo $myrow[0]; ?></span></td>
<td align="center"><span><?php echo $myrow[1]; ?></span></td>
<td align="center"><span><?php echo $myrow[2]; ?></span></td>
<td align="center"><span><?php echo $myrow[3]; ?></span></td>
</tr>
<br>
<?php
}
?>
5. 从结果集中获取一行作为对象
mixed mysqli_fetch_object ( resource result )
<?php
while($myrow = mysqli_fetch_object($result)){
?>
<tr>
<td align="center"><span><?php echo $myrow->Id; ?></span></td>
<td align="center"><span><?php echo $myrow->Name; ?></span></td>
<td align="center"><span><?php echo $myrow->Sex; ?></span></td>
<td align="center"><span><?php echo $myrow->Age; ?></span></td>
</tr>
<br>
<?php
}
?>
6. 从结果集中获取一行作为枚举数组
mixed mysqli_fetch_row ( resource result )
<?php
while($myrow = mysqli_fetch_row($result)){
?>
<tr>
<td align="center"><span><?php echo $myrow[0]; ?></span></td>
<td align="center"><span><?php echo $myrow[1]; ?></span></td>
<td align="center"><span><?php echo $myrow[2]; ?></span></td>
<td align="center"><span><?php echo $myrow[3]; ?></span></td>
</tr>
<br>
<?php
}
?>
7. 从结果集中获取一行作为关联数组
mixed mysqli_fetch_assoc ( resource result )
<?php
while($myrow = mysqli_fetch_assoc($result)){
?>
<tr>
<td align="center"><span><?php echo $myrow['Id']; ?></span></td>
<td align="center"><span><?php echo $myrow['Name']; ?></span></td>
<td align="center"><span><?php echo $myrow['Sex']; ?></span></td>
<td align="center"><span><?php echo $myrow['Age']; ?></span></td>
</tr>
<br>
<?php
}
?>
8. 获取查询结果集中的记录数
int mysqli_num_rows ( resource result )
$nums = mysqli_num_rows ( $result );
echo $nums;
9. 释放内存
void mysqli_free_result(resource result)
10. 关闭连接
bool mysqli_close ( mysqli link )
mysqli_free_result($result); // 释放内存
mysqli_close($conn); // 关闭连接
11. 连接与关闭MySQL服务器的最佳时机
function book_query(){
global $conn;
$result = mysqli_query($conn,"select * from tb_demo01");
while($myrow = mysqli_fetch_row($result)){
echo $myrow[1]." ";
echo $myrow[2]."<br />";
}
mysqli_free_result($result);
}
$conn = mysqli_connect("localhost", "root", "111", "db_database10")
or die("连接数据库服务器失败!".mysqli_error());
mysqli_query($conn,"set names utf8");
book_query();
book_query();
mysqli_close($conn);
PHP 笔记——操作MySQL数据库的更多相关文章
- [Python] 学习笔记之MySQL数据库操作
1 Python标准数据库接口DB-API介绍 Python标准数据库接口为 Python DB-API,它为开发人员提供了数据库应用编程接口.Python DB-API支持很多种的数据库,你可以选择 ...
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- PHP操作MySQL数据库5个步骤
PHP操作MySQL数据库一般可分为5个步骤:1.连接MySQL数据库服务器:2.选择数据库:3.执行SQL语句:4.关闭结果集:5断开与MySQL数据库服务器连接. 1.用mysql_connect ...
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- 转 用C API 操作MySQL数据库
用C API 操作MySQL数据库 参考MYSQL的帮助文档整理 这里归纳了C API可使用的函数,并在下一节详细介绍了它们.请参见25.2.3节,“C API函数描述”. 函数 描述 mysql_a ...
- PHP操作mysql数据库:[2]查询数据听语音
本文主要详细讲解如何使用php语言,对mysql数据库进行查询.添加.删除.更新等操作. 工具/原料 Macromedia Dreamweaver 8 mysql数据库,php语言 一.前言 ...
- Code First操作Mysql数据库
前面博客也讲了,自己做一个网站,选用的是MVC+EF Code First+MySql+EasyUI,先说下技术选型.一.为什么选择MVC? 因为之前自己做的系统大部分是webForm,MVC的之前也 ...
- JDBC操作MySQL数据库案例
JDBC操作MySQL数据库案例 import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...
- shell脚本操作mysql数据库
shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql -hhostname -Pport -uusername -pp ...
随机推荐
- 一个ASP.NET中使用的MessageBox类
/// <summary> /// 自定义信息对话框 /// </summary> public class MessageBox { /// <summary> ...
- 【BZOJ】3963: [WF2011]MachineWorks
[题意]给定n台在时间di可以买入的机器,pi买入,可在任意时间ri卖出,买入和卖出之间的持有时间每天产生gi金钱,任意时间至多持有一台机器.给定初始钱数c和总天数T,求最大收益.n<=10^5 ...
- 引用类型 ( 对象定义 )——Date 类型
本文地址:http://www.cnblogs.com/veinyin/p/7607743.html 1 创建日期对象 var date = new Date(); 2 可以给日期对象传值 2.1 ...
- matlab前景分割
用最简单的差分法实现了一下前景分割.使用的mall数据集. 思路是这样的:首先设定一个队列的长度,若读取的图片张数少于队列长度则以当前读取到的图片做平均.否则则以队列中的图片做平均. 这样之后和当前图 ...
- LOW逼三人组(三)----插入排序
插入排序思路 插入排序算法: import random # 随机模块 import time def cal_time(func): # 装饰器 ,用来检测算法所执行的时间 def wrapper( ...
- 在wamp下增加多版本的PHP(PHP5.3,PHP5.4,PHP5.5)支持
1.安装WAMPServer 根据自己的操作系统选择相应的WAMP版本,我这里选择WAMPSERVER-32 BITS & PHP 5.5-2.5, 双击安装,选择安装目录即可,超级简单.根据 ...
- Term Term ssh登陆linux后 显示乱码
setup----terminal----locale----“chinese” OK!!!!!
- Codeforces 445A Boredom(DP+单调队列优化)
题目链接:http://codeforces.com/problemset/problem/455/A 题目大意:有n个数,每次可以选择删除一个值为x的数,然后值为x-1,x+1的数也都会被删除,你可 ...
- POJ 3026 Borg Maze(Prim+bfs求各点间距离)
题目链接:http://poj.org/problem?id=3026 题目大意:在一个y行 x列的迷宫中,有可行走的通路空格’ ‘,不可行走的墙’#’,还有两种英文字母A和S,现在从S出发,要求用 ...
- 下划线css
/* <div class="text">header</div> */ .text { /* 作用元素 */ display: inline-block; ...