PHP连接MySQL数据库的几种方法

1.最简单的方式-mysql(面向过程)

<?php

$con = mysql_connect("localhost","root","password");

$select_db = mysql_select_db('test');

if (!$select_db) {

    die("could not connect to the db:\n" .  mysql_error());

}

//查询代码

$sql = "select * from db_table";

$res = mysql_query($sql);

if (!$res) {

    die("could get the res:\n" . mysql_error());

}

while ($row = mysql_fetch_assoc($res)) {

    print_r($row);

}

//查询代码

//关闭数据库连接

mysql_close($con);

?>

)

2.新的方式-mysqli(面向过程)

)

$mysql_server_name = 'localhost'; //改成自己的mysql数据库服务器

$mysql_username = 'root'; //改成自己的mysql数据库用户名

$mysql_password = 'password'; //改成自己的mysql数据库密码

$mysql_database = 'test'; //改成自己的mysql数据库名

$conn=mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database); //连接数据库

//连接数据库错误提示

if (mysqli_connect_errno($conn)) { 

    die("连接 MySQL 失败: " . mysqli_connect_error()); 

}

mysqli_query($conn,"set names utf8"); //数据库编码格式

// mysqli_set_charset($conn,"utf8");//设置默认客户端字符集。

// mysqli_select_db($conn,$mysql_database); //更改连接的默认数据库

//查询代码

$sql = “select * from db_table”;

$query = mysqli_query($conn,$sql);

while($row = mysqli_fetch_array($query)){

    echo $row['title'];

}

//查询代码

// 释放结果集+关闭MySQL数据库连接

mysqli_free_result($result);

mysqli_close($conn);

)

3、常用方式-mysqli(面向对象)

)

//连接数据库方式1

$conn = new mysqli('localhost', 'root', 'password', 'test');

//连接数据库方式2

// $conn = new mysqli();

// $conn -> connect('localhost', 'root', 'password', 'test');

//check connection (检查PHP是否连接上MYSQL)

if ($conn -> connect_errno) {

    printf("Connect failed: %s\n", $conn->connect_error);

    exit();

}

//查询代码

$sql = “select * from db_table”;

$query = $conn->query($sql);

while($row = $query->fetch_array()){

    echo $row['title'];

}

//查询代码

//释放结果集+关闭MySQL连接

$query1 -> free_result();

$conn -> close();

)

4、PDO连接MySQL数据库

)

<?php

$db = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');

try {

    foreach ($db->query('select * from db_table') as $row){

    print_r($row);

    }

    $db = null; //关闭数据库

} catch (PDOException $e) {

    echo $e->getMessage();

}

?>

)

5、ADODB连接MySQL数据库

)

<?php

//安装驱动-引入类即可

require_once './adodb5/adodb.inc.php';

$conn = &ADONewConnection('mysql');

$conn->connect('localhost','root','password','test');

$conn->Execute("set names utf8");

//查询代码

$res = $conn->Execute("select * from db_table");

if (!$res){

    echo $conn->ErrorMsg();

}else{

    var_dump($res);

}

?>

//关闭连接

$conn->close();

)

6、总结-关闭mysql数据库的连接方法

MySQL - 面向过程

    mysql_close($conn);

MySQLi - 面向过程

    mysqli_close($conn);

MySQLi - 面向对象

    $conn->close();

PDO

    $conn = null;

ADODB

    $conn->close();

或

    $conn->free();

php链接mysql,php链接mysql的常用方法的更多相关文章

  1. 在sql server使用链接服务器中访问mysql

    ----创建ODBC链接EXEC sp_addlinkedserver @server = 'MySQL', @srvproduct='MySql' , @provider = 'MSDASQL', ...

  2. windows下用navicat远程链接虚拟机Linux下MySQL数据库

    今天想用navicat远程连接虚拟机中的MySQL数据库,一直连不上,在网上搜索了一下,发现原因是MySQL对远程用户登陆的授权问题.这里说一下我的解决方法.(本人小白) 首先,我用navicat去远 ...

  3. MySQL的链接,查看数据库,使用数据库,查看表

    MySQL的链接,查看数据库,使用数据库,查看表 mysql> show databases; +--------------------+ | Database | +------------ ...

  4. nodejs -mysql模块链接数据库创建库创建表单。

    var mysql = require('mysql'); var connection= mysql.createConnection({ host:'localhost', user:'root' ...

  5. android+eclipse+mysql+servlet(Android与mysql建立链接)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原创地址  .作者信息和本声明.http://www.cnblogs.com/zhu520/p/7724524.html 经过两天的时间我终于把A ...

  6. mysql 的链接字符

    mysql的链接字符: driver =com.mysql.cj.jdbc.Driverurl =jdbc:mysql://localhost:3306/oa?serverTimezone=Asia/ ...

  7. Navicat for MySQL打开链接时出错错误为:2005 - Unknown MySQL server host 'localhost'(0)?

    问题:Navicat for MySQL打开链接时出错错误为:2005 - Unknown MySQL server host 'localhost'(0)? 在使用navicat 连接mysql数据 ...

  8. 【微信开发】LINUX-windows下用navicat远程链接虚拟机Linux下MySQL数据库

    今天想用navicat远程连接虚拟机中的MySQL数据库,一直连不上,在网上搜索了一下,发现原因是MySQL对远程用户登陆的授权问题.   MySQL登陆:mysql -h主机地址 -u用户名-p用户 ...

  9. linux下mysql远程链接

    前言:我的系统是ubuntu,默认不支持mysql远程链接.接下来的步骤改变这点. 1,首先取消mysql本机绑定 编辑/etc/mysql/my.cnf 将”bind-address = 127.0 ...

  10. windows下远程链接虚拟机Linux下MySQL数据库问题处理

    参考解决:https://www.cnblogs.com/blogforly/p/5997553.html 今天远程连接虚拟机中的MySQL数据库,一直连不上,在网上搜索了一下,发现原因是MySQL对 ...

随机推荐

  1. java Date操作的相关代码

    /** * 获取现在时间,这个好用 * * @return返回长时间格式 yyyy-MM-dd HH:mm:ss */ public static Date getSqlDate() { Date s ...

  2. java实现全排列输出

    java实现全排列输出 转自:http://easonfans.iteye.com/blog/517286 最近在找工作,面试java程序员或者软件工程师,在笔试的时候常常见到这么一道题:全排列 的输 ...

  3. java发送短信开发,第三方接口方法

    必备的三个jar包Maven有自己去下: commons-logging commons-logging 1.1 commons-httpclient commons-httpclient 3.1 c ...

  4. 测试linux python import module

    源码test.py #!/usr/bin/env python # -*- coding: UTF-8 -*- import os os.system("df -h") 运行结果( ...

  5. 老司机带你体验SYS库多种新玩法

    导读 如何更加愉快地利用sys库做一些监控? 快来,跟上老司机,体验sys库的多种新玩法~ MySQL5.7的新特性中,非常突出的特性之一就是sys库,不仅可以通过sys库完成MySQL信息的收集,还 ...

  6. layui的CRUD案列

    用layui来实现一个简单的二级权限和增删改查案列 利用layui提供的组件(table , layer , form,tree)来进行开发 写一个简单的登录界面   根据用户的ID来 获取用户所对应 ...

  7. SVN无法查看最近日志和提交记录

    现象: 使用SVN查看最近的提交记录日志时,最近总是无法显示出全部的日志内容,只能显示到几天之前的日志.就算是自己刚提交的代码也是无法没有记录的. 解决方式:右键选择TortoiseSVN中的&quo ...

  8. redis跨实例迁移 & redis上云

    1)redis跨实例迁移--源实例db11迁移至目标实例db30 root@fe2e836e4470:/data# redis-cli -a pwd1 -n 11 keys \* |while rea ...

  9. Identity用户管理入门六(判断是否登录)

    目前用户管理的增删改查及登录功能已经全部实现,但存在一个问题,登录后要取消登录按钮显示退出按钮,未登录应该有注册按钮,现实现过程如下 一.Startup.cs中增加服务 app.UseAuthenti ...

  10. 跨域分布式系统单点登录的实现(CAS单点登录)

    1. 概述 上一次我们聊了一下<使用Redis实现分布式会话>,原理就是使用 客户端Cookie + Redis 的方式来验证用户是否登录. 如果分布式系统中,只是对Tomcat做了负载均 ...