学习笔记 mysql_学习笔记—MySQL基础

数据库的介绍

mysql数据库介绍

开放源码的轻量级关系型数据库管理系统,体积小、速度快、操作便捷。

数据库的启动和连接

mysql数据库启动

在终端输入以下命令,启动mysql服务器

service mysql start

输入命令,查询mysql服务器状态

service mysql status

出现如下提示表示mysql服务器以启动成功

d642611d5e10dfbd0823c0909648f8c8.png

mysql数据库连接

输入账户和密码连接数据库

edd85a937cdc424ddd225c1bed55f606.png

2aba2931472434b6e89ab6543aafd41c.png

表示启动成功。

mysql数据库断开连接

输入exit,如果显示Bye表示断开成功。

973638cd18c23647cb73952015163be0.png

数据库的操作

显示数据库

show databases;

创建数据库

create database 库名 default character set utf8;

删除数据库

drop database 库名;

使用数据库

use 库名;

2e86e4bbf4ab83fac25c40a2eec0ea83.png

表示以成功切换到study数据库。

数据表的操作

显示数据表

show tables;

创建数据表

## 创建表语句createtables 表名(字段名 类型 约束,字段名 类型 约束,......);

## 注意:mysql是没有序列的,但是可以在创建表的时候直接指定主键是自赠的。

在字段后使用 auto_increment 表示自增。

## MySQL常见字段类型

数值类型:int(长度)表示整数类型的数据float/double表示浮点数

字符类型:varchar(长度)动态分配存储长度char(长度)分配固定长度

日期类型:

date:格式为yyyy-mm-dddatetime:格式为yyyy-MM-dd hh:mm:ss 占用8个字节timestamp:特点:会自动进行时区的转换,占用4个字节

time:时间year:年份

其他类型:TEXT:字符数据

BLOB:二进制数据

## 约束

主键约束:

在创建表时,在字段后使用primary key即可

在创建表语句的最后面使用constraint 约束名 pirmary key(主键字段名)

非空约束:

在创建表的时候直接在字段后使用 nutnull即可

注意:

mysql的非空约束中空字符是可以存储进去的。

检查约束:

在mysql中是没有检查约束的,但是使用check关键字又不会报错。

解决:

使用代码逻辑进行无效的数据过滤。

使用 mysql 的存储过程。

唯一约束:

在字段名后直接使用unique即可

在创建表语句的最后面使用constraint 约束名 unique(字段名)

外键约束:

在字段名后直接使用references父表名(父表主键名)

在创建表语句的最后面使用constraint 外键约束名 foreign key(字段名) references父表名(父表主键名)

## 在表外部添加约束

## 主键约束alter table 表名 add constraint 约束名 pirmary key(主键字段名);

## 唯一约束alter table 表名 add constraint 约束名 unique key(字段名);

## 非空约束alter table 表名 modify 字段名 类型 not null;## 外键约束alter table 表名 constraint 外键约束名 foreign key(字段名) references 父表名(父表主键名)on delete set null on update cascase;

修改数据表

添加字段:alter table 表名 add字段名 类型 约束;

删除字段:alter table 表名 drop字段名;

修改字段类型:alter table表名 modify 字段名 新的类型;

修改字段名:alter table表名 change 字段名 新的字段名 类型;

修改表名:alter table 表名 rename as 新的表名;

删除数据表

drop table 表名;

查看表创建语句

show create table 表名;

表数据的操作

查询数据

## 单表查询

## 查询全部select * from表名;

## 别名

直接在字段后使用即可select 字段,字段 别名,字段 from表名;

## 连接符

使用concat(字段名,“连接的字符”)

## 去除重复

使用distinct关键字即可

## 排序order by字段名

## where字句select * from 表名 where判断条件;

## 分组group by字段名

注意:

分组可以和字段一起使用

##having分组后筛选

## 多表查询select * from 表名1 别名1,表名2 别名2 where别名1.字段名 判断条件 别名2.字段名;select * from 表名1 别名1 inner join 表名2 字段名2 on 别名1.字段名 判断条件 别名2.字段名;

## 子查询select * from 表名 where 字段名 in (select 字段名 from 表名 where 查询条件);

增加数据

insert into 表名 values(值1,值2,值3,...); 全字段插入insert into 表名(主键字段名,字段,字段,...) values(值1,值2,值3,...); 部分字段插入

删除数据

delete from 表名 where 条件;

修改数据

update 表名 set 字段名=值,字段名=值,... where 条件;

分页查询

select * from表名 limit x,y;

x:从第几条数据开始查询

y:每页显示多少条数据

## 每页显示n条,查询第m页的信息select * from 表名 limit m*n-n,n;

数据库的备份

导出

## 导出整个数据库

mysqldump-u root -p 数据库名>/目录/文件名.sql;

## 只导出一个表

mysqldump-u root -p 数据库名 表名>/目录/文件名.sql;

导入

## 方法一 连接数据库之后输入

mysql>source /目录/文件名.sql;

## 方法二 连接数据库之前输入

mysql-u root -p 数据库名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值