PHP与数据库基础知识

一、PHP连接数据库

准备工作

(默认使用了xampp)打开xampp-control,依次打开(注:此处我在外部开启过另一个mysql,所以这里无法启动):
在这里插入图片描述
在xampp目录下的htdocs文件里面,新建立一个connect2mysql.php文件。

编写连接代码

注意:不同版本的php的区别
需确定自己的php版本,若版本在7。几以上,应该使用mysqli_connect(),因为此版本以上已经舍弃mysql_connect(),若不是则应该使用mysql_connect()。
mysqli_error()与mysql_error()区别:
mysqli_error()括号中有一个参数(连接数据库的变量),
mysql_error()括号中无变量
mysql_query()和mysqli_query()的区别:
mysqli_query(connection,数据库执行语言);
mysql_query(数据库执行语言,connection)
mysqli_select_db()和mysql_select_db()区别:
mysqli_select_db(connection,数据库名称);
mysql_select_db(数据库名称,connection)
在这里插入图片描述)
之后记得保存关闭。

测试

打开浏览器,登入http://localhost:8081/my_db.php,(其中localhost:后面的是连接到数据库的端口号)
在这里插入图片描述
运行成功

二、建立新数据库表

之后在原代码处进行修改,即成功连接数据库之后,关闭数据库之前:

建立一个数据库

mysqli_query中第二个参数为数据库语言,意思为建立一个名为"php_db"的数据库
在这里插入图片描述

测试

在这里插入图片描述
此时再通过navicat查看,不了解可查询:navicat相关的知识用法
在这里插入图片描述
成功

建立一个数据表

在这里插入图片描述
其中mysqli_select_db()是在建立数据库连接的基础上选择其中的某个数据库(库名为第二个参数);
而stu_id int primary key意思为将stu_id设为主键,主键唯一即不会重复
而$sql变量代表的也是数据库语言,创建一个名为test的表格:
在这里插入图片描述

三、数据表的增删查改

注意 下面缺少遇到错误情况下的处理方法,只是简单的对已有数据的处理

增加数据

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

删除数据

在删除数据前再加入几个数据:
在这里插入图片描述
在这里插入图片描述
删除test表中的stu_id为2的学生,执行之后:
在这里插入图片描述

查看数据

在这里插入图片描述
其中$row=mysqli_fetch_assoc()是对函数里面参数的遍历,而var_dump()则是将row的值打印出显示在网页上:
在这里插入图片描述

更改数据

指定将学号为1的学生名字改为李四(原为张三)
在这里插入图片描述
在这里插入图片描述

四、全代码

<?php
//建立一个变量con,
//mysqli_connect("填localhost或者127.0.0.1","规定登录所使用的用户名","自己的数据库密码")
$con = mysqli_connect("localhost","root","19990911");
//判断con是否成功连接数据库
if(!$con){
    die('Could not connect:'.mysqli_error($con));
}


//create mysql
if(!(mysqli_query($con,"create database php_db"))){ 
    echo "error in create database:".mysqli_error($con);
}

//choise which database
mysqli_select_db($con,"php_db");


//create a table test in php_db
$sql = "create table test 
(
stu_id int not null primary key,
stu_name varchar(10),
stu_score int
)";
mysqli_query($con,$sql);


//insert into test
$sql = "insert into test 
values(3,'张三',100)";
mysqli_query($con,$sql);


//update data
$sql = "update test set stu_name='李四' where stu_id=1";
mysqli_query($con,$sql);


//delete data
$sql = "delete from test where stu_id=2";
mysqli_query($con,$sql);

//check data
$sql = "select * from test";
$query=mysqli_query($con,$sql);
while ($row=mysqli_fetch_assoc($query)){
    //打印结果集
    var_dump($row);
}
 //释放结果集
 mysqli_free_result($query);

//关闭数据库
mysqli_close($con);
?>
发布了13 篇原创文章 · 获赞 0 · 访问量 358

猜你喜欢

转载自blog.csdn.net/xiao_xiao_lan/article/details/105140241