PHP操作MySQL

PHP操作MySQL

PHP操作MySQL的三种方式:

  • MySQL:非永久连接,性能比较低,PHP5.5以后废弃;
  • MySQLi:永久连接,减轻服务器压力,只支持MySQL
  • PDO:能实现MySQLi的常用功能,支持大部分数据库;

PHP扩展查看函数phpinfo();
php配置文件php.ini

MySQL方式连接数据库

//设置html的字符集
header('content-type:text/html;charset=utf-8');

//连接数据库
$server = '127.0.0.1';
$username = 'root';
$password = '123';
$port = '3309';
$link = mysql_connect("{$server}:{$port}", $username, $password);

//选择数据库
$db_name = 'test005';
mysql_select_db($db_name);

//设置字符集
$charset = 'utf8';
mysql_set_charset($charset);

/*
 * MySQL方式执行SQL语句
 * mysql_query()对insert, update, delete, drop之类的操作,执行成功时返回true, 出错时返回false
 */
$query = '';
mysql_query($query);

$query_insert = 'INSERT INTO users(id, name, salary) VALUES(1, \'张三\', 3000)';
$query_update = 'UPDATE user SET name =\'李四\' WHERE id = 1';
$query_delete = 'DELETE FROM users WHERE id = 1';
$query_drop = 'DROP TABLE IF EXISTS user';

mysql_query($query_insert);

/*
 * mysql_query()对SELECT操作,执行成功会返回一个resource,如果查询出现错误则返回FALSE
 * 返回的结果资源应该传递给mysql_fetch_array($result)和其他函数来处理结果表,取出返回的数据
 * 参数:MYSQL_ASSOC MYSQL_NUM和MYSQL_BOTH
 */
$query_select = 'SELECT * FROM users';
$result = mysql_query($query_select);

$line_row = mysql_fetch_row($result);  //索引数组,第一条数据
$line_assoc = mysql_fetch_assoc($result);  //关联数据,第一条数据
$line_array = mysql_fetch_array($result);   //混合数组,既有关联数组,又有索引数组,第一条数据

//遍历
while ($line = mysql_fetch_assoc($result)){
    $data[] = $line;  //每一次取出的结果集都添加到$data数组中
}
var_dump($data);  //输出所有的结果集

//关闭数据库连接
mysql_close($link);

MySQLi面向过程方式操作数据库

/****** 面向过程 ******/

//连接数据库
$host = '127.0.0.1';
$user = 'root';
$password = '123';
$database = 'test005';
$port = '3309';
$connect = mysqli_connect($host, $user, $password, $database, $port);

//执行SQL语句
$query = 'SELECT * FROM user';
$result = mysqli_query($connect, $query);

mysqli_fetch_row($result);        //索引数组,第一条数据
mysqli_fetch_assoc($result);      //关联数据,第一条数据
mysqli_fetch_array($result);      ////混合数组,既有关联数组,又有索引数组,第一条数据

var_dump(mysqli_fetch_assoc($result));

//获取结果集
var_dump(mysqli_fetch_all($result));

//关闭数据库连接
mysqli_close($connect);


    原文作者:好久不见
    原文地址: https://segmentfault.com/a/1190000015161202
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞