PHP数据库操作

一、操作数据库的步骤

我们对数据库的操作主要分为五步:
连接数据库、选择数据库、设置编码方式、操作数据库、关闭数据库。

二、连接数据库

连接数据库的方法是调用mysql_connect()函数,它需要我们提供三个参数,服务器的主机名,用户名和密码。如果服务器和php运行在同一台计算机上,可以使用localhost作为主机名。

// 1、连接数据库  服务器主机名,用户名,密码
$db = mysql_connect("localhost","root","");

三、选择数据库

与数据库进行连接之后,就可以使用各种mysql_xxx()函数对数据库进行操作,但是为了每次调用mysql_xxx()函数都要指定目标数据库,一般我们会先用mysql_select_db()函数选定一个默认数据库,其参数为数据库名称。

//选择数据库
mysql_select_db("mydataDB")

四、设置编码方式

由于我们的程序中有时会需要显示汉字,为了防止汉字乱码,我们就要先设置编码方式为SET NAMES UTF8,并用mysql_query()函数来执行者个指令。


    //  设置编码方式
    mysql_query("SET NAMES UTF8");

  • mysql_query() 函数可以用来执行任何一种SQL命令,比如SELECT(查询)、INSERT(插入新纪录)、UPDATE(修改现有记录)、DELETE(删除现有记录)、CREATE TABLE(创建新数据表)、ALTER TABLE(修改数据表结构)等。

五、操作数据

1、查询数据表,使后面的所有操作都针对当前数据表执行。

    // 创建sql语句,并检测是否正确
    $sql = "SELECT * FROM users";
    $res = mysql_query($sql);

2、mysql_fetch_row()函数将以普通数组的形式返回数据库中的一条数据,它的各个字段需要以$row[n]的方式进行访问。

    $row = mysql_fetch_row($res); // 返回普通数组
    var_dump($row);
代码执行效果

var_dump()方法是判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型.

    $row = mysql_fetch_row($res);
    var_dump($row);
    echo "
"; print_r($row); >``` ![var_dump和print_r的区别](http://upload-images.jianshu.io/upload_images/1986486-438b0f29657462fa.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
// 遍历获取username的值
while ($row = mysql_fetch_row($res)) {
    echo $row["1"]."
"; };

![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-0e907292668e4e4b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

3、mysql_fetch_array()函数将以关联数组的形式返回数据库中的一条数据,它的各个字段需要以$row[n]或$row["colname"]的方式进行访问。

$row = mysql_fetch_array($res);
print_r($row);

echo "
"; echo $row[1]; //echo $row["username"];

![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-6d84849efb618d59.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

4、mysql_fetch_accoc()函数也以关联数组的形式返回数据库中的一条数据,它的各个字段只能以$row["colname"]的方式进行访问。

$row = mysql_fetch_assoc($res);
print_r($row);
echo "


";
echo $row["username"];


![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-d9710d7bca910ca3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

5、mysql_fetch_object()函数以一个对象的方式返回数据库中的一条数据,它的各个字段需要以$row->colname的方式进行访问。

$row = mysql_fetch_object($res);
var_dump($row);
echo "
"; echo $row->username; //取出对象的属性
![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-fdb91f0a787c03d7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

6、mysql_num_rows()函数用于获取查询返回的记录数。

// 获取查询记录的数量
$count = mysql_num_rows($res);
echo "

$count

";


![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-f1ce6613ae4877d9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
7、mysql_insert_id() 函数用于获取INSERT(插入)操作产生的ID。

8、mysql_affected_rows()函数用于获取前一次对数据库操作所影响的记录数。

// 获取由于insert而产生的id
$id = mysql_insert_id($db);
echo $id;
echo "
"; // 获取影响的行数 $rows = mysql_affected_rows($db); echo $rows;

![代码执行效果](http://upload-images.jianshu.io/upload_images/1986486-aed5f777dc39461e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

9、mysql_free_result()函数释放查询结果。

// 释放查询结果
mysql_free_result($res);


#五、关闭数据库

调用mysql_close()函数可关闭数据库,参数为我们指定的数据库,如果不写参数,则默认为最近打开的数据库。

// 打开数据库
$db = mysql_connect("localhost","root","");

// 关闭数据库
mysql_close($db);

***
以上内容纯属个人理解,由于本人水平有限,若有错漏之处敬请之处改正,谢谢!

你可能感兴趣的:(PHP数据库操作)