PHP笔记之用PHP操作数据库增删改查(入门操作)

发布于 2020-02-17  63 次阅读


这段时间学PHP,整理的一些笔记,分批记录在博客上。

一、连接MySQL数据库并选择或创建数据库

通过PHP脚本程序去管理MySQL服务器中的数据,可以通过mysqli扩展功能模块去连接MySQL服务器,办法是调用mysqli_connect()函数,和使用MySQL客户机程序连接MySQL服务器类似。

这里需要说明的是,PHP5.0之前使用的是mysql_connect(),php5.0之后便不再推荐该函数,PHP7.0以后直接废弃,改用mysqli_connect()。格式如下:
resource mysqli_connect ( [string host [, string username [, string password [, string dbname [, int port [,string socket]]]]] )

<?php
    header("Content-Type: text/html;charset=utf-8");
     error_reporting(0); //禁止错误输出
     $link = mysqli_connect('127.0.0.1:3306','用户','密码'); //创建数据库连接
     if(mysqli_connect_errno($link)){
         printf("Connect Faild:%s\n",mysqli_connect_error($link));
         die("连接失败");//连接失败退出程序
     }
     echo "连接成功\n";
     if(mysqli_query($link,"CREATE DATABASE tests")){ //创建数据库
         echo "创建数据库 tests 成功\n";//成功后的提示
     }else{ //如果失败
     echo "创建数据库失败".mysqli_error($link); //出错提示
     }
     if (mysqli_select_db($link,"tests")) {# 连接数据库tests
         echo "连接test数据库成功\n";
     }else{
         echo "连接失败".mysqli_error($link)."</br>";
     }
     mysqli_close($link); //最后关闭数据库连接
?> 

二、设置字符集

为了避免读取和写入数据时发生数据乱码,除了要将文件格式设置为utf-8无bom头格式,还要将数据库客户端字读集设置为utf8,所以我们需要使用mysqli_set_charset()函数来完成数据库字符集的设定!

if (mysql_set_charset($link,"utf-8")) {//设置字符集为utf-8
         echo "设置字符集为utf-8成功\t";
     }else{
         echo "字符集设置失败".mysqli_error($link);
     }

三、对数据库进行增删查改

建表

//设计创建一个新表的SQL语句
     $sql = "CREATE TABLE  mytests(name VARCHAR(15)  NOT NULL ,
                                             age INT NOT NULL ,
                                             sex VARCHAR(15) NOT NULL DEFAULT'男'  )";//新增表项姓名,年龄,性别
     if(mysqli_query($link,$sql)){
         echo "新建表实例成功";
     }else{
         echo "建表失败".mysqli_error($link);
     }

插入数据

//向表内插入数据
     //构建SQL语句
     $sql = "INSERT INTO mytests(name,age,sex) VALUES ('QLNG',21,'男')";
     if(mysqli_query($link,$sql)){
         echo "插入数据成功\t,插入数据为:'QLNG',21,'男'";
     }else{
         echo "插入失败".mysqli_error($link);
     }




修改数据

	//修改表类数据
	//构建SQL 语句,将QLNG的年龄从21改为22
	$sql = "UPDATE mytests SET age = 22 WHERE name = 'QLNG' ";
	if (mysqli_query($link,$sql)) {
		echo "数据修改成功\t";
	}else{
		echo "数据修改失败".mysqli_error($link);
	}

查询数据

	//查询数据
	//构建SQL语句
	$sql = "SELECT * FROM mytests";
	echo "查询到:</br>";
	if(mysqli_query($link,$sql)){
		$test = mysqli_query($link,$sql);
		while ($row=mysqli_fetch_assoc($test)) {//解析资源集test
			# 输出数组
			echo $row['name']."</br>";
			echo $row['age']."</br>";
			echo $row['sex']."</br>";
		}	
	}else{
		echo "查询失败".mysqli_error($link);
	}

删除数据

//删除数据
	//构建SQL语句删除表
	$sql = "DELETE  FROM mytests WHERE name='QLNG'";
	if(mysqli_query($link,$sql)){
		echo "已删除"."</br>";
	}else{
		echo "删除失败".mysqli_error($link);
	}

删除数据库,关闭数据连接

//删除数据库
     $sql = "DROP TABLE IF EXISTS mytest";
     if (mysqli_query($link,$sql)) {
         echo "删除成功";
     }else{
         echo "出错了".mysqli_error($link);
     }
   mysqli_close($link); //最后关闭数据库连接

以上便是用PHP操作数据库的入门基本操作,下一篇写进阶。博主菜鸡,如有遗漏疏忽,欢迎大家指正。

全部代码如下:

<?php 
	header("Content-Type: text/html;charset=utf-8");
	error_reporting(0); //禁止错误输出
	
	$link = mysqli_connect('127.0.0.1:3306','用户','密码'); //创建数据库连接
	if(mysqli_connect_errno($link)){
		printf("Connect Faild:%s\n",mysqli_connect_error($link));
		die("连接失败");//连接失败退出程序
	}
	echo "连接成功\n";

	if (mysqli_set_charset($link,"utf8")) {//设置字符集为utf-8
		echo "设置字符集为utf-8成功\t";
	}else{
		echo "字符集设置失败".mysqli_error($link);
	}

	if(mysqli_query($link,"CREATE DATABASE tests")){ //创建数据库
		echo "创建数据库 tests 成功\n";//成功后的提示
	}else{ //如果失败
    echo "创建数据库失败".mysqli_error($link); //出错提示
	}

	if (mysqli_select_db($link,"tests")) {# 连接数据库tests
		echo "连接test数据库成功\n";
	}else{
		echo "连接失败".mysqli_error($link)."\n";
	}

	//设计创建一个新表的SQL语句
	$sql = "CREATE TABLE  mytests(name VARCHAR(15)  NOT NULL ,
											age INT NOT NULL ,
											sex VARCHAR(15) NOT NULL DEFAULT'男'  )";//新增表项姓名,年龄,性别
	if(mysqli_query($link,$sql)){
		echo "新建表实例成功";
	}else{
		echo "建表失败".mysqli_error($link);
	}

	//查看数据库和表
	$sql = "SHOW TABLE mytests";
	if(mysqli_query($link,$sql)){
		echo "查看数据库:\n";
	}else{
		echo "查看操作失败".mysqli_error($link);
	}

	//向表内插入数据
	//构建SQL语句
	$sql = "INSERT INTO mytests(name,age,sex) VALUES ('QLNG',21,'男')";
	if(mysqli_query($link,$sql)){
		echo "插入数据成功\t,插入数据为:'QLNG',21,'男'";
	}else{
		echo "插入失败".mysqli_error($link);
	}

	//修改表类数据
	//构建SQL 语句,将QLNG的年龄从21改为22
	$sql = "UPDATE mytests SET age = 22 WHERE name = 'QLNG' ";
	if (mysqli_query($link,$sql)) {
		echo "数据修改成功\t";
	}else{
		echo "数据修改失败".mysqli_error($link);
	}

	//查询数据
	//构建SQL语句
	$sql = "SELECT * FROM mytests";
	echo "查询到:</br>";
	if(mysqli_query($link,$sql)){
		$test = mysqli_query($link,$sql);
		while ($row=mysqli_fetch_assoc($test)) {//解析资源集test
			# 输出数组
			echo $row['name']."</br>";
			echo $row['age']."</br>";
			echo $row['sex']."</br>";
		}	
	}else{
		echo "查询失败".mysqli_error($link);
	}

	//删除数据
	//构建SQL语句删除表
	$sql = "DELETE  FROM mytests WHERE name='QLNG'";
	if(mysqli_query($link,$sql)){
		echo "已删除"."</br>";
	}else{
		echo "删除失败".mysqli_error($link);
	}

	//删除数据库
	$sql = "DROP TABLE IF EXISTS mytest";
	if (mysqli_query($link,$sql)) {
		echo "删除成功";
	}else{
		echo "出错了".mysqli_error($link);
	}

	mysqli_close($link); //最后关闭数据库连接
?>
这桌面真好看。

学不动了,带带孩子吧。