计算机二级MySQL笔记(第十三章 MySQL数据库的应用编程)

首先声明,本章笔记主要介绍使用PHP进行MySQL数据库的应用编程,内容深度仅适用于计算机二级MySQL。因为PHP又是另一门编程语言,其内容不可能在一篇博客里讨论完。关于PHP的语法,请自行查阅,可以参考教程 PHP菜鸟教程

使用PHP进行MySQL数据库编程的基本步骤如下:

  1. 首先建立与MySQL数据库服务器的连接。
  2. 然后选择要对其操作的数据库。
  3. 再执行相应的数据库操作,包括对数据的添加、删除、修改、查询等。
  4. 最后关闭与MySQL数据库服务器的连接。

以上各步骤,均通过PHP内置的函数库 mysql 中相应的函数来实现。

建立与MySQL数据库服务器的连接

在php 5 中,可以使用函数mysql_connect()和函数mysql_pconnect()来建立与MySQL数据库服务器的连接。前者用于建立非持久连接,后者用于建立持久连接。

1、使用函数 mysql_connect() 建立非持久连接

语法格式为:

mysql_connect(servername, username, password)
/*
servername: 服务器
username: 用户
password: 密码
*/

通常会将mysql_connect()函数返回的连接标识号保存在某个变量中,以便PHP程序使用。实例说明:

//这里使用了con变量保存连接标识,后面的if语句使用到了该变量。
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
if(!$con)
{
	echo "连接失败!";
}
else
{
	echo "连接成功!";
}	
?>

建立数据库连接是数据库操作的前提条件,因此在执行mysql_connect()之后,应当立即进行判断是否连接成功。在PHP中,一切非 0 值会被认为是逻辑值 TRUE,而数值 0 会被当做逻辑值 FALSE。函数连接执行后,返回的连接标识实质上是一个非 0 值,会被当做 TRUE 来处理。因而,可以使用if语句进行判断。

2、使用函数 mysql_pconnect() 建立非持久连接

其语法格式和实际用法与 mysql_connect() 基本相同:

mysql_pconnect(servername, username, password)

但存在以下几点区别:

  • 函数mysql_connect()建立的连接,当数据库操作结束后会自动关闭,而函数mysql_pconnect()建立的连接会一直存在,是一种持久的连接。
  • 对于函数mysql_pconnect()而言,每次连接前都会检查是否使用了同样的用户,如果有,则直接使用上次的连接,而不会重复打开。
  • 函数mysql_connect()建立的连接,可以使用函数mysql_close()关闭。而mysql_pconnect()不能。

选择数据库

在执行具体的数据库操作之前,应当首先选定相应的数据库。在PHP 5 中,可以使用函数mysql_select_db()来选定某个数据库,其语法格式为:

mysql_select_db(database, connection)
/*
database: 数据库名称
connection: 指定的数据库连接,可选项,如不指定,则使用上一个打开的连接
*/

实例说明:

//选择数据库db_school
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
if(mysql_errno())
{
	echo "数据库连接失败!";
	die(); //终止运行
}
mysql_select_db("db_school", $con);
if(mysql_errno())
{
	echo "数据库选择失败!";
	die();
}
echo "数据库选择成功!";
?>

函数mysql_errno()mysql_error()的功能就是分别获取PHP程序中前一个MySQL函数执行后的错误编号,和错误提示信息。当前一个函数执行成功后,他们会分别返回数值0空字符串,因此,这两个函数也可以用来作为判断条件。

执行数据库操作

选定数据库之后,就可以执行具体的数据库操作了,在PHP 5 中,可以使用函数mysql_query()提交并执行SQL语句。其语法格式为:

mysql_query(query, connection)
/*
query: sql语句
connection: 指定连接
*/

1、数据添加

//在tb_student表中添加“张三”的学生信息
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
mysql_select_db("db_school", $con);
mysql_query("set names 'gbk'"); //设置中文字符集
$sql = "insert into tb_student(studentNo, studentName)";
$sql = $sql."values('20131101', '张三');";
if(mysql_query($sql, $con))
{
	echo"添加成功";
}
else
{
	echo"添加失败"}
?>

2、数据修改

//在tb_student表中修改“张三”的学生的籍贯为“广州”
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
mysql_select_db("db_school", $con);
mysql_query("set names 'gbk'"); //设置中文字符集
$sql = "update tb_student set native='广州'";
$sql = $sql."where studentName='张三';";
if(mysql_query($sql, $con))
{
	echo"修改成功";
}
else
{
	echo"修改失败"}
?>

3、数据删除

//在tb_student表中删除“张三”的信息
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
mysql_select_db("db_school", $con);
mysql_query("set names 'gbk'"); //设置中文字符集
$sql = "delete from tb_student";
$sql = $sql."where studentName='张三';";
if(mysql_query($sql, $con))
{
	echo"删除成功";
}
else
{
	echo"删除失败"}
?>

4、数据查询

数据查询返回的结果不再是一个逻辑值,而是一个结果集。为了灵活处理结果集中的相关记录,PHP提供了一系列处理函数,常用的包括:读取函数mysql_fetch_array(),读取记录数函数mysql_num_rows(),读取记录指针函数mysql_data_seek()等等。函数用法读者自行搜索哦。

//查询学号为“201314520”的学生姓名
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
mysql_select_db("db_school", $con);
mysql_query("set names 'gbk'"); //设置中文字符集
$sql = "select studentName from tb_student";
$sql = $sql."where studentNo='201314520';";
$result = mysql_query($sql, $con)  //这里将结果集存入变量result
if($result)
{
	echo"查询成功";
	$array = mysql_fetch_array($result, mysql_num);  //读取result中的指定记录,存入变量array中
	if($array)
	{
		echo"读取到学生信息";
		echo"所要查询学生的姓名是:".$array[0];
	}
	else echo"没有读取到信息";
}
else echo"查询失败";
?>

关闭数据库连接

数据操作执行完毕后,应及时关闭连接,释放系统资源。PHP 5 中,使用函数mysql_close()来关闭数据库连接。这里注意只能关闭非持久连接。其语法格式为:

mysql_close(connection)

实例说明:

//关闭数据库连接
<? php
$con = mysql_connect("localhost:3306", "root", "123456");
echo "已连接数据库服务器";
mysql_select_db("db_school", $con);
echo "已选择数据库";
mysql_close($con);
echo "已关闭数据库服务器连接";
?>

课后习题

在这里插入图片描述在这里插入图片描述

<? php
$con = mysql_connect("localhost:3306", "root", "123456");
mysql_select_db("db_test", $con);
mysql_query("set names 'gbk'");  //设置中文字符集
$sql = "insert into content(content_id, subject, words, username, face, email, createtime)";
$sql = $sql."values(null, 'MySQL问题请教', 'MySQL中对表数据的操作有哪些?', 'MySQL初学者', 'face.jpg', 'tom@gmail.com', now());";  //这里注意分号的使用
if(mysql_query($sql, $con))
{
	echo"留言成功添加";
}
else
{
	echo"留言添加失败";
}
?>
  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值