MySQL笔记

一、初识MySQL1.1、数据库分类关系型数据库:(SQL)MySQL,Oracle,DB2…通过表和表之间,行和列之间的关系进行数据的存储非关系型数据库:(NoSQL) Not OnlyRedis,MongDB非关系型数据库,对象存储,通过自身的属性来决定。DBMS(数据库管理系统)数据库的管理软件,科学有效的管理我们的数据。维护和获取数据;1.2、MySQL简介MySQL是一个关系型数据库管理系统之前是属于瑞典MySQL AB公司,现在属于Oracle旗下产品My
摘要由CSDN通过智能技术生成

一、初识MySQL

1.1、数据库分类

关系型数据库:(SQL)

  • MySQL,Oracle,DB2…
  • 通过表和表之间,行和列之间的关系进行数据的存储

非关系型数据库:(NoSQL) Not Only

  • Redis,MongDB
  • 非关系型数据库,对象存储,通过自身的属性来决定。

DBMS(数据库管理系统)

  • 数据库的管理软件,科学有效的管理我们的数据。维护和获取数据;

1.2、MySQL简介

MySQL是一个关系型数据库管理系统

之前是属于瑞典MySQL AB公司,现在属于Oracle旗下产品

MySQL是最好的RDBMS(关系数据库管理系统)应用软件之一。

是开源的数据库软件~体积小、速度快、招人成本低、所有人必须会,适用于中小型网站、或者大型网站,集群。

官网:http://ww.mysql.com

1.3、链接数据库

mysql -uroot -p123456   --连接数据库

updata mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';
--修改用户密码

flush privileges; --刷新权限

-------------------------------------------------
show databases; --查看所有的数据库
use school  --切换数据库  use  数据库名
show tables; --查看数据库中所有的表
describe student; --显示数据库中所有的表的信息

create database 表名  --创建一个数据库
exit;   --退出链接

二、操作数据库

  • 操作数据库 > 操作数据库中的表 > 操作数据库中表的数据
  • 操作数据库

1.创建数据库

create database [if not extsts] teacher --创建数据库

2.删除数据库

drop database [if exists] teacher  --删除数据库

3.使用数据库

use 'school'   --使用数据库  如果表名或者字段是一个特殊字符,就需要带``

4.查看数据库

show databases  --查看所有的数据库

2.1、数据库的列类型

数值:

tinyint 十分小的数据 1个字节
smallint 较小的数据 2个字节
mediumint 中等大小的数据 3个字节
int 标准的整数 4个字节 常用的 int
bigint 较大的数据 8个字节
float 浮点数 4个字节
double 浮点数 8个字节
decimal 字符串形式的浮点数 金融计算的时候一般使用decimal

字符串:

char 字符串固定大小 0~255
varchar 可变字符串 0~65535 常用的变量 对应Java中的String
tinytext 微型文本 2^8-1
text 文本串 2^16-1 保存大文本

时间日期:

date YYYY-MM-DD 日期格式
time HH:MM:SS 时间格式
datetime YYYY-MM-DD HH:mm:ss 最常用的时间格式
timestamp 时间戳 1970.1.1到现在的毫秒数! 也较为常用
year 表示年份

null:

  • 没有值,未知
  • ==注意,不要使用null进行运算, 如果使用结果为null

2.2、数据库的字段属性(重点)

Unsigned:

  • 无符号的整数
  • 声明了该列不能声明为负数

zerofill :

  • 0填充的
  • 不足的位数,使用0来填充,

自增:

  • 通常理解为自增,自动在上一条记录的基础上 + 1(默认)
  • 通常用来设计唯一的主键~ index,必须是整数类型
  • 可以自定义设计主键自增的起始值和步长

非空 NULL not null :

  • 假设设置为 not null ,如果不给它赋值,就会报错!
  • NULL,如果不填写值,默认值就是null~

拓展:

每一个表,都必须存在以下5个字段,未来做项目时用的,表示一个记录存在的意义!
id  主键
`version`    乐观锁
is_delete    伪删除
gmt_create   创建时间
gmt_updata   修改时间

2.3、创建数据库表

create table if nof extsts `student`(
	`id` int(4) not null auto_increment comment '学号',
    `name` varchar(30) not null default '匿名' comment '姓名',
    `pwd ` varchar(20) not null default '123456' comment '密码',
    `sex` varchar(2) not null default '女' comment '性别',
    `birthday` datetime default null comment '出生日期',
    `address` varchar(50) default null comment '邮箱',
    primary key(`id`)--设置id为主索引
)engine=innodb default charset=utf8
格式:
CREATE TABLE [IN NOT EXTSTS]`表名`(
'字段名' 列类型 [属性] [索引] [注释],
'字段名' 列类型 [属性] [索引] [注释],
...
'字段名' 列类型 [属性] [索引] [注释],
)[表类型][字符集设置][注释]
show create database school  --查看创建数据库的语句
show create table student --查看student数据表的定义语句
desc student  --显示表的结构

2.4、数据表的类型

--关于数据库的引擎
/*
innodb   数据库默认使用的
myisam   早些年使用的
*/

2.5、修改表

--修改表名 alter table 旧表名 rename as 新表名
alter table teacher rename as teacher1

--增加表的字段 alter table 表名 add 字段名 列属性
alter table teacher1 add age int(11)

--修改表的字段 (重命名,修改约束!)
--alter table 表名 modify 字段名 列属性[]
alter table teacher1 modify age varchar(11)  --修改约束

--alter table 表名 change 旧名字  新名字  列属性[]
alter table teacher1 change age age1 int(1)  --字段重命名

--删除表的字段 alter table 表名 drop 字段名
alter table teacher1 drop age1

--删除表(如果表存在再删除)
drop 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小城小人物

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值