PHP简单的使用MySQL事例
分类:技术相关 阅读量: 253 次

PHP简单的使用MySQL事例

分类:技术相关 阅读量: 253 次

PHP操作数据库需要使用mysqli函数,有面向对象接口和面向过程接口,作为程序员应该使用面向对象的写法(官方也提倡)
mysqli是mysql的增强版,不提倡用mysql。
php+mysql.png

初学,做笔记。

<?php
//首先连接数据库,定义数据库连接信息后new一个;
define('server_host','127.0.0.1');
define('server_user','root');
define('server_passwd','123456');
$mysqli = new mysqli(server_host, server_user, server_passwd);

//开始执行mysql语句。先确定一下连接字符,防止乱码
$mysqli->set_charset("utf8");

//创建数据库school,并设置数据库的字符编码。为了更好的存储中文内容,所以设置utf8mb4_unicode_ci
$mysqli->query("CREATE DATABASE school CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci");

//选择数据库school
$mysqli->select_db('school');

//创建表t_students,并建立4个列;
//id列为TINYINT类型,不能为空长度为3的数字并且自增长。要养成习惯设置id列来标识每一个唯一行。
//name列VARCHAR类型,不能为空长度10个字设置字符集为utf8mb4_unicode_ci更好的支持中文。
//class列TINYINT类型,长度为2不为空的数字或英文。
//number列INT类型,长度为15不为空的数字或英文。这个列可以代替id,毕竟学号应该没有相同的吧。
$mysqli->query("CREATE TABLE `t_students` ( `id` TINYINT(3) NOT NULL AUTO_INCREMENT , `name` VARCHAR(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL , `class` TINYINT(2) NOT NULL , `number` INT(15) NOT NULL , PRIMARY KEY (`id`))");

//向表t_students插入一条数据
//id列是主键,且自增长,所以不用填,为NULL。
$mysqli->query("INSERT INTO `t_students` (`id`, `name`, `class`, `number`) VALUES (NULL, 'Alice', '3', '20180301')");

//执行插入数据命令,一次性插入3条数据。
$mysqli->query("INSERT INTO `t_students` (`id`, `name`, `class`, `number`) VALUES (NULL, '小明', '1', '20180101'), (NULL, '小红', '1', '20180102'), (NULL, '李华', '2', '20180201')");

//---------------------------------

//读取输出数据
//先把查询结果放进变量$result
$result=$mysqli->query("SELECT * FROM `t_students` order by number");

//判断$result是否执行成功
//$result->num_rows计算返回的结果数,此处是4,既然不为零那就是真
if($result&&$result->num_rows){

        //$result->fetch_array(MYSQLI_ASSOC)遍历$result中的数据,当数据全部遍历完毕后$rows就为0,while条件不成立,停止遍历。
        while($rows=$result->fetch_array(MYSQLI_ASSOC))
        {
            //每一次的遍历结果放进遍历$data,遍历一次放一次。
            $data[] = $rows;
        }
            //遍历输出$data的值
            foreach($data as $key)
        {
            
            echo "id:",$key['id'],"\n";
            echo "name:",$key['name'],"\n";
            echo "class:",$key['class'],"\n";
            echo "number:",$key['number'],"\n";
        }
    }else{
        echo "没有数据。";
}

上面这是整个php文件,修改一下数据库连接,就可以直接运行看效果。

评论