数据库基础

数据库基础: 是每一个服务器自带的用来存放数据的空间 mysql

访问数据库:

1. 网页访问数据库: http://localhost/phpMyAdmin/ 输入用户名 密码 登录 phpstudy 默认数据的用户名和密码都是root

2. cmd访问数据库: cmd必须进入数据库的bin目录

cmd命令:

d: 回车 进入某个盘符

dir 回车 查看当前文件夹下的所有目录

cd 文件夹名 进入某个文件夹

进入bin目录之后 链接数据库

mysql -u用户名 -p密码 回车

3. 使用工具链接数据库: navicate for mysql

链接数据库: 链接名 自己取 不限

4. php链接数据库

新建数据库: 在mysql下面可以有很多数据库 一般一个项目一个数据库

数据库名是项目的英文名

字符集: utf8 -- UTF-8 Unicode

排序规则: utf8_general_ci

一个项目会有很多的功能 一个功能一个数据表

数据库下面会有很多的数据表

新建表:

字段: 表中每一列数据的标题

一般一张表的第一个字段是id 用来排序 int类型 不允许为空 自动递增 主键

主键: 是一张表的唯一标识 (一张表中只能有一个主键 并且一般都是给id)

字段的数据类型:

字符串类型:

char(m) m的取值范围是1-255之间 m代表字节 表示存放的数据必须是字符类型 并且固定长度m

当数据的长度没有超过m的时候 自动补齐到m 当长度超过m 会剪切至m

name char(20)

30

varchar(m) m的取值范围是1-255之间 表示存放的数据必须是字符类型 可变长度

当数据长度没有超过m 长度内容决定(不会自动补齐 ) 当长度超过m 会剪切至m

name varchar(20)

aa [aa]

tinytext 存放字符型数据 最多只能存放255字符

text 存放字符型数据 最多可以存放65536字符

注意: 只要是字符类型 都要设置编码

字符集:utf8

排序规则:utf8_general_ci

数字类型:

整数:

tinyint 有符号 -128 +127 无符号 0-255

smallint 有符号 -32768 +32677 无符号 0-65535

int 十位数字

bigint 二十位数字

只要选择了自动递增 一定是int

年龄 tinyint 无符号

科学运算 bigint

价格 smallint

小数:

float 单精度 精确到小数点后8位

double 双精度 精确到小数点后16位

decimal(m,n); 货币类型 m 总的位数 n小数位数

shopprice decimal(6,2) 32.00

日期/时间类型: 2018-04-18 10:10:20

datetime 8字节 混合类型 年-月-日 时:分:秒 Y-m-d H:i:s

timestamp 4字节 混合类型 年-月-日 时:分:秒 Y-m-d H:i:s

date 3字节 日期类型 年-月-日 Y-m-d

time 3字节 时间类型 时:分:秒 H:i:s

------------------

sql语句: 是数据库的核心语言

sql语句对表的填删改查操作 : curd : c create(添加) u update(修改) r read(查询) d delete(删除)

查询: 在sql语句中 表名和字段名加上`` 加快sql语句的运行速度

select 字段,字段 from 表名

select `name`,`title` from `liuyanban` 查询liuyanban表中name和title字段

select * from `liuyanban` 查询liuyanban表中所有字段 *代表所有

select * from `liuyanban` where `id`=2 查询liuyanban表中 id=2的数据

select * from `liuyanban` where `id`2 查询liuyanban表中 id不等于2的数据

select * from `liuyanban` where `id`!=2 查询liuyanban表中 id不等于2的数据

select * from `liuyanban` where `id`

select * from `liuyanban` where `id`>2 查询liuyanban表中 id大于2的数据

select * from `liuyanban` where `id` in(1,4,3) 查询liuyanban表中 id的值在in的()里面的数据

select * from `liuyanban` where `id` not in(1,4,3)查询liuyanban表中 id的值不在in的()里面的数据

select * from `liuyanban` where `id` between 2 and 4 查询liuyanban表中 id的值在2-4之间

select * from `admin` where `name`='admin' and `pwd`='admin123' and 并且

select * from `admin` where `name`='admin' or `pwd`='admin123' or 或者

select * from `liuyanban` order by `time` desc 按照时间的降序排列 desc 降序 asc 升序

select * from `liuyanban` where `id` in(1,3,4) order by `time` desc

如果有where条件 order by 必须放在where条件的后面

select * from `liuyanban` limit 0,3 限制查询的条数 limit 起始位置,查询的条数 第一条数据的位置是0

select * from `liuyanban` where `id` in(1,3,4) order by `id` desc limit 0,2

where order by limit 顺序不能乱

select count(*) from `liuyanban` 查询表中总的数据条数

select count(*) as allnum from `liuyanban` as 取别名

select max(id) from `liuyanban` 查询表中最大的id值

select min(id) from `liuyanban` 查询表中最小的id值

select avg(id) from `liuyanban` 查询表中id的平均值

select sum(id) from `liuyanban` 查询表中id的和

添加:

insert into 表名 (字段,字段,字段) value(值1,值2,值3)

insert into `admin` (`name`,`pwd`) value('root','root123')

修改:

update 表名 set 字段=值1,字段=值2,字段=值3 where 条件

update `admin` set `name`='user',`pwd`='user123' where `id`=2

删除:

delete from 表名 where 条件

delete from `liuyanban` where `id`=4

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180605G1B74O00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券