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)
可以看到字段了。
感觉力不从心越来越难了!
感到气气
PHP全栈开发(七):PHP与MySQL存储交互(1.连接、创建数据库;创建数据表)的更多相关文章
- C# 利用mysql.data 在mysql中创建数据库及数据表
C# 利用mysql.data 在mysql中创建数据库及数据表 using System; using System.Collections.Generic; using System.Linq; ...
- mysql 基本语法学习1(数据库、数据表、数据列的操作)
今天学习了一下mysql语法,并记录下来 1.mysql的数据库操作 /***1.操作数据库的语法 ***/ -- 1)显示所有数据库 -- show databases; -- 2)创建数据库 -- ...
- mysql导入导出sql文件(包括数据库和数据表的操作)
废话不多说直接开始. 在windows命令行下登录mysql,创建一个test_01数据库,创建一个user表,并插入一条数据,如下 一.导出数据库test_01 1.退出数据库,在命令行中输入 my ...
- Mysql 中如何创建数据库和数据表
这里的数据库为:user 数据表为 aaa mysql –uroot –p 进入mysql create database user; 创建数据 ...
- MySQL 创建数据库及数据表
1.创建数据库 (1) 命令行创建 [root@host]# mysqladmin -u root -p create RUNOOB Enter password:****** (2) php创建 语 ...
- Python 全栈开发七 面向对象
一.编程范式 编程是程序员用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程 , 一个程序是程序员为了得到一个任务结果而编写的一组指令的集合,正所谓条条大路通罗马,实现一个任务的方式 ...
- python 全栈开发,Day75(Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件)
昨日内容回顾 基于对象的跨表查询 正向查询:关联属性在A表中,所以A对象找关联B表数据,正向查询 反向查询:关联属性在A表中,所以B对象找A对象,反向查询 一对多: 按字段:xx book ----- ...
- python 全栈开发,Day18(对象之间的交互,类命名空间与对象,实例的命名空间,类的组合用法)
一.对象之间的交互 现在我们已经有一个人类了,通过给人类一些具体的属性我们就可以拿到一个实实在在的人.现在我们要再创建一个狗类,狗就不能打人了,只能咬人,所以我们给狗一个bite方法.有了狗类,我们还 ...
- 复习MySQL①创建数据库及数据表
• 创建数据库:create database 数据库名称; – 例:创建名为test的测试数据库 create database test; • 查看创建好的数据库:show create data ...
随机推荐
- 定时脚本删除docker容器中内容
今天在我同步mongo数据库的时候,服务器的磁盘突然就被占满了导致同步中断,mongo容器也停止工作了.然后就想要弄一个能够定时清理同步过程中留存在docker容器中的mongo数据的脚本.话不多说, ...
- Scanner练习
练习1 键盘输入两个数字求和 public static void main(String[] args) { Scanner in = new Scanner(System.in); System. ...
- MySQL客户端工具的使用与MySQL SQL语句
MySQL客户端工具的使用 1.MySQL程序的组成 客户端 mysql:CLI交互式客户端程序 mycli:CLI交互式客户端程序;使用sql语句时会有提示信息 mysql_secure_insta ...
- OSSCore 开源解决方案介绍
基于.NetCore的积木化服务框架,主要将常规解决方案进行进一步的抽象下沉形成相关基础可选框架单元(在Framework 目录),并在此基础上实现常规系统模块(在Modules 目录),如用户管理, ...
- Redis 09 基数
参考源 https://www.bilibili.com/video/BV1S54y1R7SB?spm_id_from=333.999.0.0 版本 本文章基于 Redis 6.2.6 概述 Redi ...
- .NET性能优化-快速遍历List集合
简介 System.Collections.Generic.List<T>是.NET中的泛型集合类,可以存储任何类型的数据,因为它的便利和丰富的API,在我们平时会广泛的使用到它,可以说是 ...
- js--自定义对象
1.直接量对象(JSON) {"name":"zhangsan","age":25} {}代表一个对象,包含多组键值对. 通常key是字符串 ...
- java-正则、object中的两个方法的使用
正则: "."和"\" "."点儿,在正则表达式中表示任意一个字符. "\"在正则表达式中是转意字符,当我们需要描述一个 ...
- Linux 禁止root远程登录解决办法
linux中root用户是超级管理员,可以针对root用户暴力破解密码,这样很不安全,工作中我们一般禁止root用户直接远程登陆,开设一个或多个普通用户,只允许登陆普通用户,如果有需要用root用户, ...
- CF453C Little Pony and Summer Sun Celebration(构造、贪心(?))
CF453C Little Pony and Summer Sun Celebration 题解 这道题要求输出任意解,并且路径长度不超过4n就行,所以给了我们乱搞构造的机会. 我这里给出一种构造思路 ...