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 ...
随机推荐
- 流程控制语句continue
continue语句 用于结束当前循环,进入下一次循环,同样通常与if分支结构一起使用 (这边和前面的break可以结合在一起与C中的一样的理解) 注意这个不是终止整个循环只是终止当前循环进行下一次循 ...
- WPF 截图控件之移除控件(九)「仿微信」
WPF 截图控件之移除控件(九)「仿微信」 WPF 截图控件之移除控件(九)「仿微信」 作者:WPFDevelopersOrg 原文链接: https://github.com/WPFDevelope ...
- 开源深度思考 - In Community We Trust
作者 | 黄东旭,PingCAP 联合创始人&CTO 出品 | CSDN(ID:CSDNnews) 业界一直流传着黄东旭的传说:小学三年级开始写代码,四五年级学习C语言,初中毕业时,已经能够用 ...
- Babylon.js 入门简介和开发实例
Babylon.js是一款WebGL开发框架,和Three.js类似. Three.js是由社区推动的,比Babylon.js要成熟些,而Babylon.js是微软推动的,和微软的相关技术结合更好. ...
- MyBatis 04 实战
增删改查实现 在实际使用中,MyBatis 的使用遵从一定的规范. 常用的增删改查的 MyBatis 实现如下: Mapper.xml <?xml version="1.0" ...
- 大家都能看得懂的源码 - 如何封装 cookie/localStorage/sessionStorage hook?
本文是深入浅出 ahooks 源码系列文章的第九篇,该系列已整理成文档-地址.觉得还不错,给个 star 支持一下哈,Thanks. 今天来看看 ahooks 是怎么封装 cookie/localSt ...
- HCIA-Datacom 3.4 实验四:实现VLAN间通信实验
实验介绍: 划分VLAN后,不同VLAN的用户间不能二层互访,这样能起到隔离广播的作用.但实际应用中,不同VLAN的用户又常有互访的需求,此时就需要实现不同VLAN的用户互访,简称VLAN间互访.华为 ...
- Spring mvc源码分析系列--前言
Spring mvc源码分析系列--前言 前言 距离上次写文章已经过去接近两个月了,Spring mvc系列其实一直都想写,但是却不知道如何下笔,原因有如下几点: 现在项目开发前后端分离的趋势不可阻挡 ...
- 模拟赛:树和森林(lct.cpp) (树形DP,换根DP好题)
题面 题解 先解决第一个子问题吧,它才是难点 Subtask_1 我们可以先用一个简单的树形DP处理出每棵树内部的dis和,记为dp0[i], 然后再用一个换根的树形DP处理出每棵树内点 i 到树内每 ...
- Java Web中MVC设计模式与IOC
MVC是由Model(模型).View(视图).Controller(控制器)三个模块组成 视图:用于做数据展示以及和用户交互的一个界面(html页面) 控制层:能够接受客户端的请求,具体的业务功能还 ...