PHP全栈开发(七):PHP与MySQL存储交互(1.连接、创建数据库;创建数据表)

在Linux服务器中可以使用命令

mysqladmin -u root password beijing2007;

来修改MySQL的root用户的密码。

但是在我们自己安装了wampserver的电脑里面,可以到PhpMyAdmin这个网页页面去改,初始root密码同样为空。

然后我们用面向过程的MySQLi来进行数据库的链接,链接代码如下:

<?php
$servername = "localhost";
$username = "root";
$password = "beijing2007";
 
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
 
// 检测连接
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

echo "连接成功";

?>

链接在脚本执行完毕后自动关闭,也可以用下面代码来进行手动关闭:

mysqli_close($conn);

OKOK,现在已经链接好了,现在我们来创建一个数据库

<?php
$servername = "localhost";
$username = "root";
$password = "beijing2007";
 
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
 
// 检测连接
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "连接成功";

$sql="CREATE DATABASE mydb";
if(mysqli_query($conn,$sql)){
    echo "创建数据库成功";
}else{
    echo "Error creating database: " . mysqli_error($conn);
}
?>

上面代码我们就创建了一个名叫mydb的数据库啦。

创建了数据库之后,我们要在数据库里面创建一个数据表

然后这个数据表是用来存放用户信息的,那么,它就有下面这些字段:账号、密码、手机号码。

那么我们在创建数据表的时候就要考虑到这些字段的类型。

这个时候我们就要学习MySQL里面的数据类型了,这个还挺难的。

在MySQL中呢,有三种主要的类型,分别是文本(text);数字(number);日期/时间(Date/Time)

这里用户名称我们使用的类型是VARCHAR类型;密码我们使用的是VARCHAR类型;手机号码使用的是INT类型

VARCHAR(size):保存可变长度的字符串,可包含字母,数字,特殊字符,在括号中指定字符串的最大长度,最多255个字符,如果值的长度大于255,则被转换成TEXT类型。

INT(size):带符号范围-2147483648到2147483647,无符号的范围是0到4294967295。 size 默认为 11

现在前期准备工作已经做完了,我们来创建一个数据表吧:

<?php
$servername = "localhost";
$username = "root";
$password = "beijing2007";
$dbname = "mydb";
 
// 创建连接
$conn = mysqli_connect($servername, $username, $password,$dbname);
 
// 检测连接
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "连接成功";

//使用sql创建数据表
$sql="CREATE TABLE user(
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user  VARCHAR(10) NOT NULL,
pwd VARCHAR(10) NOT NULL,
tel INT,
reg_date TIMESTAMP
)";
if(mysqli_query($conn,$sql)){
    echo "创建数据表成功";
}else{
    echo "Error creating: " . mysqli_error($conn);
}
//关闭数据库连接
mysqli_close($conn);
?>

在创建数据表的时候我们注意到,在mysqli_connect这个函数里面最后多了一个数据库的参数$dbname

因为在创建数据表的时候,我们必须要创建数据库。

然后做完这些之后,我们打开mysql的命令行,验证一下我们的操作

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydb               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

可以看到我们创建了的数据库mydb

mysql> use mydb;
Database changed
mysql> show tables;
+----------------+
| Tables_in_mydb |
+----------------+
| user           |
+----------------+
1 row in set (0.00 sec)

可以看到数据库mydb里面有我们的数据表user

然后我们再看一下我们user表里面的字段:

mysql> show columns from user;
+----------+-----------------+------+-----+---------+----------------+
| Field    | Type            | Null | Key | Default | Extra          |
+----------+-----------------+------+-----+---------+----------------+
| id       | int(6) unsigned | NO   | PRI | NULL    | auto_increment |
| user     | varchar(10)     | NO   |     | NULL    |                |
| pwd      | varchar(10)     | NO   |     | NULL    |                |
| tel      | int(11)         | YES  |     | NULL    |                |
| reg_date | timestamp       | YES  |     | NULL    |                |
+----------+-----------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)

可以看到字段了。

感觉力不从心越来越难了!

感到气气

 

posted @ 2018-08-07 10:25  为往圣继绝学2333  阅读(158)  评论(0编辑  收藏  举报