加载扩展
扩展加载分为两步
- 开启扩展(php.ini)
Extension = php_mysql.dll - 指定扩展路径
Extension_dir = ‘D:/server/php/ext’; - 重启服务器
证明:
1. phpinfo()中查看mysql扩展
2. 直接使用mysql扩展函数访问: mysql_connect
mysql_connect(“localhost”,”root”,”root”);
PHP操作mysql
- 连接认证: 连接和认证
Resource Mysql_connect(‘主机地址:端口号’, ‘用户名’,’密码’);
默认的: mysql连接永远返回一个资源(不管连接多少次都是一个资源: 节省资源,提高并发量)
但是: 可以使用多个连接: 使用mysql_connect的第四个参数,true
设置字符集, 选择数据库: 发送SQL指令
Mysql_query(sql指令[, 连接资源]): 连接资源可以省略: mysql会自动向上寻找连接资源(连接资源没有作用域的限制)
mysql_query(“set names utf8”);
选择数据库
mysql_select_db(‘dbname’);或mysql_query(“use dbname”);获取mysql服务器的执行结果: mysql_query
a) 布尔结果: mysql_query发送的SQL指令没有结果返回(没有数据)
True: 只能代表当前SQL语句执行过程中没有出错
False: 代表SQL语句有错误
b) 结果集: mysql_query发送的SQL指令有结果返回(show,desc,select)
结果集需要解析成PHP所能使用的东西: mysql_fetch系列
Mysql_fetch_array(): 默认返回一个数组(混合数组: 有索引下标也有字段名关联下标)
Mysql_fetch_array还可以返回关联或者索引数组: 通过第二个参数控制
MYSQL_ASSOC: 返回关联数组
MYSQL_ROW:返回索引数组
Mysql_fetch_assoc():只是获取关联数组
Mysql_fetch_row(): 只获取索引数组
- 关闭数据库资源(结果集资源和数据库连接资源)
结果集资源释放: mysql_free_result(结果集资源);
释放连接资源: mysql_close(连接资源)
Mysql_errno(): 获取错误编码
Mysql_error():获取错误信息
任何SQL指令的执行之前: SQL指令都有可能保存: 为了不让用户看到一堆专业的错误: 将错误信息进行转换: 封装错误处理函数
新增操作: 获取自增长id
Mysql_insert_id(): 自动获取上次的新增操作的自增长id, 如果没有自增长id返回0.
更新或者删除操作: 获取受影响的行数
Mysql_affected_rows(): 获取上次的操作(增删改)受影响的行数