STAGE2-DAY07-MySQL
数据库DB(database)
数据库其实就是存储数据的仓库,以一种特殊的形式将需要存储的信息保存到本地。也就意味着本地的库其实就是硬盘上的文件。
配置环境变量后通过DOS登录MySQL:
mysql -h地址 -u账号 -p密码,直接进入数据库页面
mysql -h地址 -u账号 -p,登录后提示输入密码
测试命令
show databases; //显示MySQL所有的数据库
MySQL库文件查看
SQL介绍及分类
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;sql 语句就是对数据库进行操作的一种语言。
SQL分类
DDL (database definition language) 数据库定义语言,针对库、表进行 创建、删除、修改操作
DML (database manipulate language )数据库操纵语言,针对表数据进行 增加|修改|删除 操作
DQL (database query language ) 数据库查询语言,针对表数据进行 查询 操作
DCL 数据库权限控制语言
DDL之库操作(数据库定义语言)
库的关键字:database
关键字: create创建 | alter修改 | drop删除 | show | 显示 | use 使用
1、显示当前连接所有的数据库 show databases;
2、指定某一个库进行操作use 数据库名;
3、使用SQL创建一个数据库(不带字符集)--create database 库名;
4、使用SQL创建一个数据库(指定字符集)--create database 库名 character set 字符集;
5、修改数据库的字符集--alter database 库名 character set 新字符集;
6、数据库的重命名操作---先删除后创建
7、删除数据库--drop database 库名;
DDL之表操作(数据库定义语言)
表的关键字:table
关键字: create创建 | alter修改 | drop删除 | desc显示
1、创建表
create table 表名(列名 列数据类型(长度),列名 列数据类型(长度)...);
2、通过SQL展示表结构信息
desc 表名;
3.修改表名
alter table 旧表名 rename 新表名;
4、修改列 将hobby改为hobbies 并且长度也修改
alter table 表名 change 旧列名 新列名 类型(长度);
5、已经创建好的表新增加一列
alter table 表名 add 列名 类型(长度);
6、删除一列
alter table 表名 drop 列名;
7、删除表
drop table 表名;
DML数据库操纵语言(操作表数据)
表的关键字:table
DML的关键:insert into 增加数据 | delete from 删除数据 | update 表名 set 修改数据
1、表中增加一条数据
insert into 表名 (列1,列2..) values (值1,值2..);
2、修改数据
update 表名 set 列=值,列=值 where 列=值;
注意:where之前是需要修改的,where 之后是定位修改哪一条。
3、删除指定的数据
delete from 表名 where 列 = 值;
4、清空表数据
delete from 表名;
Truncate 表名;
两种清空数据的区别:
delete 清空数据 是逐条删除,如果数据量比较大,会非常慢。
truncate是先删除表,在给你创建一个一样的空表。
DQL数据库查询语言(操作表数据)
针对表操作
关键字: select from 表名 where 条件
1、查询全部信息 select * from 表名;
2、单条信息查询 select * from 表名 where 条件;
3、多条件查询 select * from 表名 where 条件1 and 条件2 and 条件3 ...
4、可以让查询到的数据自定义的名字显示 关键字 as
数据库的数据类型
数值型 int
浮点型 float | double 在创建表的时候不给长度。
布尔型 boolean(根本不使用) 用int代替 0代表false 1 代表true
字符串类型(都是字符串)
char : 当指定长度之后,无论是否存储数据都占空间。
varchar:可自动缩减空间。长度的意义就是指定最大范围。
日期类型:
date: 年月日 2019-04-01
time: 时分秒 16:46:10
datetime: 2019-04-01 16:46:10
timestamp(时间戳): 2019-04-01 16:46:10
【经典面试题】datetime & timestamp的区别
datetime的最大时间为9999-12-31 23:59:59
timestamp 的最大值为 2037-12-31 23:59:59(32位)
当数据表中是datetime时候,默认值null
如果是时间戳类型,默认是当前时间。
SQL约束
主键约束
主键使用*ID表示,代表的是当前数据的唯一标识,特点是不能重复。且只有一个。
关键词:primary key 简称pk
主键自增长策略,只能适用于主键是int类型才可以。根据当前最大值增长
关键词:AUTO_INCREMENT
默认约束
就是提供给数据的默认值,如果没有填写值,按照默认值处理。
关键词:default
非空约束
如果当前列中声明非空约束,也就意味着这个列必须填数据,否则报错。
关键词:not null
唯一约束
非主键的唯一值。 约束能力只能约束不重复,没有主键约束能力强(默认值null)。
关键词:unique
- day07-BootStrap与mysql回顾
- MySQL基础day07_mysql集群实例-MySQL 5.6
- day07_mysql——mysql基础
- day07_mysql_mysql源码安装
- day07_MySQL CMake参数说明手册
- day07_mysql介绍
- day07_mysql基本操作
- day07_mysql常用的引擎
- day07_mysql权限
- Python学习day07 文件管理、mysql-python及常用模块
- day07_mysql备份
- MySQL的数据类型和建库策略
- PHP+MySQL 会员注册
- 分享 MySQL5.0+MySQL_Tools_5.0+安装包汉化包及驱动
- MySQL基于时间点恢复和快照恢复实例
- MySQL优化配置
- mysql group by
- mysql游标处理
- mySQL 2003-can't connect to mysql server on 'localhost'(10061)
- MySQL主从库认识