数据库连接
php引擎把php文件改成html的代码
通过mysqli连接数据库
phpinfo打印数据库的信息
记录联合
select * from goods left join user on goods.gid=user.gid union select *
from goods right join user on goods.gid=user.gid
这种得到的结果叫做全外连接。union如果使用就用在这里。
两个表同时更新
update user as u, goods as g set u.name='马蓉', g.price=80000 where
u.uid=1 and u.gid=g.gid;
清空表记录
delete from 表名; 清空表中所有数据,但是自增的id依然从清空前开始计
truncate table 表名;
清空表中所有数据,但是id会从1开始计
4、DCL
事务
意思就是将一组增删改数据当成一个整体,我们称为这是一个事务,这里面的语句
只要有一条执行不成功,那么整体全部执行失败。
基本使用(了解)
【注】innodb支持事务,myisam不支持事务
默认都是自动提交功能,可以通过设置 set autocommit=0; 修改为手动提交,然
后写完语句之后输入 commit指令手动提交。
开启事务是begin;
中间写sql语句,这样都不会直接修改到磁盘,需要手动commit才可以,如果中间有
错,输入rollback,所有指令全部失效。
5、DTL(了解)
创建用户
Create user ‘test’@‘192.168.10.1’ identified by ‘12345’;
如果ip写%,代表所有ip
删除用户
drop user ‘test’@‘192.168.10.1’
修改密码
修改当前用户密码
set password=password('123456');
授予权限
grant 权限 on . to ‘test’@‘192.168.10.1’;
. 代表所有库中的所有表,如果自己想指定也可以
剥夺权限
revoke 权限 on . from ‘test’@‘192.168.10.1’;
1、为什么使用php访问数据库
10.0.169.192/1603/16test/register.html
mysql
现在的php7.0已经不支持这个扩展库
mysqli
就是一个扩展库,里面有很多给我们定义好的函数,这些函数我们不需要知道人家如何实现
的,我们只要学会使用即可。
访问数据库
2、数据库连接天龙八步
1、mysqli_connect
连接失败返回false
2、判断是否连接成功
3、选择数据库
判断错误号码和信息
mysqli_errno
mysqli_error
mysqli_select_db
4、设置字符集
mysqli_set_charset
5、准备sql语句
6、执行sql语句
mysqli_query
7、提取数据
mysqli_fetch_assoc:返回关联数组($result)
mysqli_fetch_row:返回索引数组($result)
mysqli_fetch_array:返回索引和关联($result)
mysqli_num_rows:返回查询时候的结果集行数($result)
mysqli_affected_rows:增、删、改的时候返回的是受影响行数,查询的时候和
mysqli_num_rows结果一样($link)
mysqli_insert_id:返回插入的id值($link)
【注】该函数只在插入数据完毕之后生效
8、关闭数据库
mysqli_close
<?php
/*
该函数要传递三个参数
1、主机名
2、用户名
3、数据库密码
返回值:如果连接成功,返回一个object,如果连接失败,返回一个false
*/
$link = mysqli_connect('localhost', 'root', '123456');
//if ($link == false)
if (!$link) {
exit('数据库连接失败');
}
/*
数据库选择函数
参数:
1、要传递连接后的那个资源
2、你要使用的数据库名字
返回值:
*/
$db = mysqli_select_db($link, 'kongkong');
if ($db == false) {
//这里可以查看错误代号和错误信息
echo '错误代号为:'.mysqli_errno($link).'<br />错误信息为:'.mysqli_error($link);
die('数据库选择失败');
}
/*
设置字符集
php代码编写使用utf8,html代码编写使用utf8,html文件中meta标签使用utf-8,数据连接使用utf8,数据库的编码,数据表的编码utf8
*/
mysqli_set_charset($link, 'utf8');
//准备sql语句
$sql = 'select * from 1603user';
//方法==函数
/*
执行sql语句函数
参数1:连接资源
参数2:sql语句字符串
sql语句字符串的拼接是最容易出错的,如果出错了,打印出来粘贴到cmd下或者phpmyadmin中去执行,去查找错误。
返回值:如果执行成功,将结果集返回给你;如果执行失败,返回false
*/
$result = mysqli_query($link, $sql);
//判断sql语句是否执行成功,如果成功再提取相关数据,如果失败,给出信息
/*
【注】如果上面的语句是增删改,那么这里也要判断受影响行数是否大于0,这两个条件同时满足,才代表增删改语句执行成功
*/
if ($result && mysqli_affected_rows($link)) {
/*
while ($data = mysqli_fetch_array($result)) {
var_dump($data);
}*/
var_dump(mysqli_insert_id($link));
} else {
echo '执行语句失败<br />';
}
mysqli_close($link);
下一篇: PHP面向对象编程学习之一_PHP教程