测试学习7(数据库)

E-R模型

基本元素:实体,联系,属性

E表示entry,实体:一个数据对象,描述具有相同特征的事物

R表示relationship,联系:表示一个或者多喝实体之间的关联关系,关系的类型包括一对一,一对多,多对多

属性:实体的某一特征称为属性

关系也是一种数据,需要通过一个字段存储在表中

1.实体A对实体B为1对1,则在表A中或表B中创建一个字段,存储另一个表的主键值

2.实体A对实体B为1对多:在表B中创建一个字段,存储A的主键值

3.实体A对实体B为多对多:新建一张表C,这个表只有两个字段,一个用于寻出A的主键值,一个用于存储B的主键值 

命令行客户端

连接:mysql -uroot -p 回车

输入密码。

查看所有仓库:

show databases;

使用某个仓库:

use ce;(必须要写)

如果出现乱码,将显示数据改为国标形式:

set charset gbk;

然后可以使用各种数据库语句

 查看一共的表:

show tables;

查看某个表结构:

desc 表名;

或:show create table students;

备份或者恢复

内置函数

字符串函数

拼接字符串concat(str1,str2)

select concat(12,34,'ab')

select  name,hometown,concat(name,‘的家乡是’,hometown) from students

包含字符个数length(str)

select length(‘abc’)

一个中文长度是3,其他的都是1

查询名字是两个字的学生:

select * from students where length(name)=6

截取字符串

截取字符串的左边或者右边2位:select  left/right(‘abc’,2)

select substring(‘abc’,pos,len)返回字符串str的位置pos起len个字符

去掉空格

ltrim(str)返回删除了左空格的字符串str

rtrim(str)返回删除了右空格的字符串str

trim(str)返回删除了左右空格的字符串str

大小写转换

lower(str);

upper(str);

数学函数

求四舍五入值round(n,d),n表示原数,d表示小数位置,默认为0

 随机从一个表中取一条记录

select *,rand() from students order dy rand() limit 1

日期时间函数

 %s 获取秒,返回秒数

select date_format(now(),'%Y/%m/%d/%H/%i/%s')

流程控制

运行结果: 

自定义函数:

 例如:

调用

 

ceate procedure proc_stu()

begin

select *from students;

end

调用:call pros_stu

视图

 视图只是一个查询,而不是一个真正的表

语句是:create view v_stu as

事务

开始:begin

运行一系列语句后

若每条语句运行成功,提交:commit

若某一条语句没有运行成功,回退:rollback

索引

查看索引:

show index from 表名

在Mysql命令客户端运行时:

  创建表的时候三种方式添加索引:

create table create_index(

id int primary key,(字段是主键时自动添加索引)

name varchar(10) unique,(有unique时自动添加索引)

age int,

key(age)(key语句添加索引)

)

对于已经存在的表添加索引:

create index 索引名称 on 表名(字段名称(长度))

create index i_name on test(name(10))

当字段类型不是字符串时 ,不需要添加长度

create index i_age on test(age)

删除索引:drop index 索引名称 on 表名

虽然索引能提高查询速度,但是也有缺点:

分析查询

在查询语句前面加上explain

外键

主表约束从表某个字段的取值范围

从表:被约束的表,主表:约束从表的表

方式一,创建表的时候添加外键:

修改密码

打开仓库内mysql数据库,在里面找到user可以看到加密的密码

 忘记root账户密码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值