这篇博客主要介绍了三种方式来连接MySQL数据库以及创建数据库、创建表。(代码是我在原来的基础上改的)

MySQLi - 面向对象

MySQLi - 面向过程

PDO

MySQLi 面向对象

//实例 (MySQLi - 面向对象)创建数据库连接

echo "实例 (MySQLi - 面向对象)
";

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

// 创建连接

$conn = new mysqli($servername, $username, $password);

// 检测连接

if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

/*

*注意在以上面向对象的实例中 $connect_error 是在 PHP 5.2.9 和 5.3.0 中添加的。

* 如果你需要兼容更早版本 请使用以下代码替换:

// 检测连接

if (mysqli_connect_error()) {

die("数据库连接失败: " . mysqli_connect_error());

}

*/

// 创建数据库myDB

$sql = "CREATE DATABASE test";

if ($conn->query($sql) === TRUE) {

echo "数据库创建成功";

} else {

echo "
Error creating database: " . $conn->error."";

echo "
";

}/*注意: 当你创建一个新的数据库时,你必须为 mysqli 对象指定三个参数 (servername, username 和 password)。

Tip: 如果你使用其他端口(默认为3306),为数据库参数添加空字符串,指定端口号

如: new mysqli("localhost", "username", "password", "", port)*/

echo "连接成功
";

$conn->close();//关闭连接

echo "关闭连接
";

?>

//实例 (MySQLi 面向对象)创建表格

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

echo "
";

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

$dbname = "myDB";

// 创建连接

$conn = new mysqli($servername, $username, $password, $dbname);

// 检测连接

if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

// 使用 sql 创建数据表MyGuests

$sql = "CREATE TABLE MyGuests (

id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

firstname VARCHAR(30) NOT NULL,

lastname VARCHAR(30) NOT NULL,

email VARCHAR(50),

reg_date TIMESTAMP

)";

echo "";

if ($conn->query($sql) === TRUE) {

echo "Table MyGuests created successfully";

} else {

echo "创建数据表错误: " . $conn->error;

}echo "";

//连接

$conn->close();

?>

MySQLi 面向过程

//实例 (MySQLi 面向过程)--创建数据库连接

echo "实例 (MySQLi面向过程)
";

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

// 创建连接

$conn = mysqli_connect($servername, $username, $password);

// 检测连接

if (!$conn) {

die("Connection failed: " . mysqli_connect_error());

}

//创建数据库

$sql = "CREATE DATABASE myDB";

if (mysqli_query($conn, $sql)) {

echo "
数据库创建成功";

} else {

echo "
Error creating database: " . mysqli_error($conn)."";

}

echo "
连接成功
";

mysqli_close($conn);

echo "关闭连接
";

?>

//实例 (MySQLi 面向过程)创建数据库连接

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

echo "
";

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

$dbname = "myDB";

// 创建连接

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检测连接

if (!$conn) {

echo "";

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

echo "";

}

// 使用 sql 创建数据表MyGuests

$sql = "CREATE TABLE MyGuests (

id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

firstname VARCHAR(30) NOT NULL,

lastname VARCHAR(30) NOT NULL,

email VARCHAR(50),

reg_date TIMESTAMP

)";

echo "";

if (mysqli_query($conn, $sql)) {

echo "数据表 MyGuests 创建成功";

} else {

echo "创建数据表错误: " . mysqli_error($conn);

}echo "";

mysqli_close($conn);

?>

(PDO)创建数据库连接

//实例 (PDO)--创建数据库连接

echo "实例 (PDO)
";

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

try {

$conn = new PDO("mysql:host=$servername;dbname=mysql", $username, $password);

echo "
连接成功
";

//创建数据库

// 设置 PDO 错误模式为异常

$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "CREATE DATABASE myDBPDO";

// 使用 exec() ,因为没有结果返回

$conn->exec($sql);

echo "数据库创建成功";

}catch(PDOException $e)

{

echo "".$sql . "
" . $e->getMessage()."";

echo "
";

}

$conn = null;

echo "关闭连接
";

?>

//实例 (PDO)--创建数据库连接

echo "实例 (PDO)
";

date_default_timezone_set("Asia/Shanghai");

echo date('Y-m-d H:i:s',strtotime('now'));

echo "
";

$servername = "127.0.0.1";

$username = "root";

$password = "123456";

$dbname = "myDBPDO";

try {

$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);

// 设置 PDO 错误模式,用于抛出异常

$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// 使用 sql 创建数据表

$sql = "CREATE TABLE MyGuests (

id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

firstname VARCHAR(30) NOT NULL,

lastname VARCHAR(30) NOT NULL,

email VARCHAR(50),

reg_date TIMESTAMP

)";

// 使用 exec() ,没有结果返回

$conn->exec($sql);

echo "数据表 MyGuests 创建成功";

}

catch(PDOException $e)

{

echo "
".$sql . "
" . $e->getMessage()."";

}

//关闭连接

$conn = null;

?>

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐