文章目录

  • 前言
  • 初识Mysql
    • mysql是啥呢
    • 什么是数据库
    • DBMS
  • 操作数据库
    • 基本操作
    • 数据库中的数据类型
  • 操作数据表
    • 列的一些其他属性
    • 数据表的引擎
    • 基本操作
  • 总结

前言

终于放假了,前段时间一直忙着复习功课考试,也没时间更新博客,这就补上,暑假就复习巩固学过的知识吧,那就从Mysql开始吧

初识Mysql

mysql是啥呢


它是一个数据库,一个用来存储关系型数据的仓库
在现实生活中,它是怎么被运用的?
像下图这样,浏览器向服务器发送一个请求,服务器去访问数据库的内容,再给客户端以响应,这也就是我们所说的B/S模式(浏览器/服务器模式)

什么是数据库

数据库:DB:DataBase
概念:数据库软件安装在操作系统上的,可存储大量的数据
作用:存储数据,管理数据
分类:
>关系型数据库(SQL):由行(数据)和列(字段)组成,通过表与表之间,行和列之间的关系进行数据的存储
>非关系型数据库(NOSQL):以键值对存储,以对象的形式存储,通过对象的自身属性来决定

DBMS

DBMS:DataBase Management System:数据库管理系统
数据库的管理软件,科学有效的管理我们的数据,维护和获取数据
Mysql的本质就是数据库管理系统
Mysql是一种关系型数据库,将数据存储在不同的表中,以便更加方便的管理数据
Mysql所使用的的SQl语言是用于访问数据库的最常用的标准化语言

操作数据库

基本操作

1.创建数据库
语法:CREATE DATABASE [IF NOT EXISTS] 数据库名;

[IF NOT EXISTS]为可选项,不加上的话,如果你表中已经有这个数据库了,就会报错
eg:创建一个xsgl数据库

create database `sxgl`;

注意:MYSQL中不区分大小写
数据库名,数据表名,字段名尽量加上``包裹上以标识

2.使用数据库
语法:USE DATABASE 数据库名;

eg:使用sxgl数据库

use database `sxgl`;

3.查看所有的数据库
语法:SHOW DATABASES;

eg:查看所有的数据库

4.删除数据库
语法:DROP DATABASE [IF EXISTS]数据库名;

eg:删除xsgl数据库

drop database xsgl;

数据库中的数据类型

1.数值

类型 用途 占用内存
tinyint 十分小的数据 1个字节
smallint 较小的数据 2个字节
mediumint 中等大小的数据 3个字节
int 标准大小的数据 4个字节
bigint 较大的数据 8个字节
float 单精度数据 4个字节
double 双精度数据 8个字节
decimal(M,D) 字符串形式的浮点数 不知道(我查了可多资料,还是不太懂,知道的可以跟我说一下哈)

DECIMAL
decimal(5,2)表示小数的取值范围是-999.99~999.99
5代表一共5个数,2代表的是小数点后有两位小数

2.字符串

类型 用途 占用内存
char 定长字符串 0~255字节
varchar 可变长字符串 0~65536字节
tinytext 微型文本 28-1字节
text 长文本 216-1字节

3.时间日期

类型 用途 占用内存
date YYYY-MM-DD,日期格式 3个字节
time hh:mm:ss,时间格式 3个字节
datetime YYYY-MM-DD hh:mm:ss,年月日时分秒 8个字节
timestamp 时间戳,1970-1-1到现在的毫秒数 4个字节
year 年份 1个字节

操作数据表

列的一些其他属性

1.NULL
没有值,未知
注意:NULL不等于空值

2.NOT NULL
声明该列不能为空,不赋值会报错

3.UNSIGNED
无符号的整数,声明该列不能为负数

4.Zerofill
不足的位用0来填充
eg:int(5) 5—>00005

5.auto_increment
自增序列,通常会在上一条记录的基础上加1,可以自定义自增的其实质和步长
该列需为一个整数序列,必须具备唯一索引,每张表最多一个自增序列

6.DEFAULT
给该列设置一个默认值
eg:sex字段默认值设为男,如果不指定该字段的值,则默认为男

7.PRIMARY KEY
主键约束,用于唯一的标识表中的每一条记录
每张表有且仅有一个主键

数据表的引擎

MYISAM INNODB Memory
事务支持 不支持 支持 不支持
数据行锁定 不支持 支持 不支持
外键约束 不支持 支持 不支持
全文索引 支持 不支持 不支持
表空间的大小 较小 较大,约为MYISAM的2倍 内存使用较高,空间使用较少(它使用存在于内存中的内容来创建表,并没有实际写入磁盘,重启会丢失)
特点 节约空间,速度快,对事务完整性不要求,适用于以SELECT/INSERT为主的表 事务性数据库的首选引擎,具有提交、回滚、崩溃恢复能力的安全存储引擎,处理能力相对差些,占用磁盘空间较大 插入数据快、空间和内存使用较低、效率高,对事务不要求

除了这三个主要的引擎,还有例如BDB、Merge、Archive、CSV、BlackHole等,这里不做太多讨论

基本操作

创建一张数据表
语法:
CREATE TABLE table_name(
column_name1 data_type [constant_expression][NULL|NOT NULL],
column_name2 data_type [constant_expression][NULL|NOT NULL]

);

eg:在xsgl数据库中创建一张student表,字段如下:sno(设为主键),sname,sgender(默认值为男),sbirthday,sdept,引擎为INNODB,字符集为UTF8

修改表名
语法:ALTER TABLE 旧表名 RENAME AS 新表名;

eg:将student表改名为studentDemo

增加表的字段
语法:ALTER TABLE 表名 ADD 字段名 列属性;

eg:向studentDemo表中添加saddress字段,字段属性为varchar(20)

修改表的字段:changemodify
语法:
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 列属性;
ALTER TABLE 表名 MODIFY 字段名 列属性;
modify只能改字段数据类型完整性约束,不能改字段名,但是change都可以(亲测有效,但是我看网上说change不能改属性,我也不知道怎么回事)

eg:修改sname字段属性为char(20),修改saddress字段名为address,字段属性为char(25)

删除表的字段
语法:ALTER TABLE 表名 DROP 字段名;

eg:删除studentDemo表中的address字段

删除数据表
语法:DROP TABLE [IF EXISTS] 表名;

eg:删除studentDemo表

drop table if exists `studentDemo`;

注意:
1.所有的符号要用英文符号
2.Mysql不区分大小写
3.字段名,数据表名,数据库名尽量加上``来包裹上
4.Mysql的注释为- -,在Navicat中#也可以作为注释,最好用Mysql的原生注释符"- -"

总结

开始我们知道了什么是mysql,什么是数据库,还有DBMS数据库管理系统,接下来又学习了数据库的基本操作,创建数据库,使用数据库,查看数据库,删除数据库,数据库中的一些基本数据类型,数值类型、时间类型、文本类型,又学了数据表的基本操作,创建数据表,为数据表添加字段,修改字段名,属性,删除表,还了解了三个常见的数据表的引擎MYISAM,INNODB,MEMORY,还有列的一些其他属性,像NULL空值,DEFAULT默认值,AUTO_INCREMENT自增序列等等
先学到这吧,你学会了吗,哈哈下次见

Mysql从删库到跑路(1)相关推荐

  1. MySQL从删库到跑路(5):in and not

     "哈哈哈哈,看你这几天没来上课,我还以为你去拜什么高人为师了?原来就是这个烂番薯.臭鸟蛋的小卖部大爷学装逼,你逗我玩呢?哈哈哈哈哈"  "哈哈哈哈,一个老屌丝,一个小屌 ...

  2. MySQL从删库到跑路(2):大爷的SQL私房菜

    大爷的SQL私房菜 夜色如墨,月凉如水,一轮皎洁的圆月高高地挂在夜空之上,平日里鼾声如雷的室友今夜也停止了打鼾,如此静谧的夜晚,李有为却辗转难眠. 时间悄然来到凌晨一点半,他已经在窗边站了53分钟23 ...

  3. MySQL从删库到跑路(三)——SQL语言

    作者:天山老妖S 链接:http://blog.51cto.com/9291927 一.SQL语言简介 1.SQL语言简介 SQL是结构化查询语言(Structured Query Language) ...

  4. MySQL从删库到跑路

    MySQL数据库指令集 增(insert) 不指定字段 insert into <表名> values(值1,值2,值3...); 指定字段(没给到值的字段为默认值或null) inser ...

  5. MySQL从删库到跑路(7):连接查询,用联系的观点看女神与渣男

     "有为,能陪我说说话么?"  望着梨花带雨的女神,一时间李有为陷入了恍惚之中,尽管心里已经千万次告诫自己要远离面前的女人,可是当她真的出现在面前时,李有为的大脑早已一片空白.   ...

  6. mysql从删库到跑路 亚马逊_Amazon RDS 上的 MySQL 的已知问题和限制 - Amazon Relational Database Service...

    Amazon RDS 上的 MySQL 的已知问题和限制 下面给出了有关对 Amazon RDS 使用 MySQL 的已知问题和限制. 不一致的 InnoDB 缓冲池大小 对于 MySQL 5.7,管 ...

  7. MySQL从删库到跑路(8):聚合函数——让我们来统计一下漂亮妹子的信息

     "李有为,我且问你,human_base_info表面,颜值最高的妹子能有多高?"  听完大爷的话,李有为的嘴角情不自禁地绽开了一抹不易察觉的潇洒而自信的笑容,"大爷, ...

  8. MySQL从删库到跑路(9):group by——给漂亮小姐姐分个组

     上回说到,李有为学会了五个聚合函数,自那以后,谁是这个世界上最漂亮的人,谁是这世界上最高的人,谁是这个世界上最重的人,都逃不过她的火眼金睛,然后大爷的一个问题又让李有为陷入了难题的泥沼当中,在这个花 ...

  9. MySQL从删库到跑路(10):case when——国色天香、倾国倾城,给漂亮小姐姐分个类

     一生一代一篇文,争教两处销魂.上回说到,李有为跟着小卖部大爷,装逼界的传奇人物逼神阿六敦学了一招group by分组后自以为可以纵横天下,然而很快,他便发现人外有人.天外有天,强中还有强中手,一山还 ...

最新文章

  1. 计算机视觉组队学习预告!提前进群
  2. golang float string int 相互转换 保留小数位
  3. java 注释 连接,java – 如何使用JPA注释创建连接表?
  4. 布隆过滤器速度_详解布隆过滤器的原理、使用场景和注意事项
  5. python pyqt5安装_Python3 安装PyQt5及exe打包图文教程
  6. 父组件更新prop_如何在ReactJS中更新组件的prop —哦,是的,有可能
  7. 安装出现 PHP Extension curl must be loaded 错误(magento)
  8. phpstudy本地搭建域名访问
  9. 中国机器自动化控制器行业市场供需与战略研究报告
  10. VB用API控制输入法状态
  11. Linux虚拟机出现卡死且无法结束进程的解决办法
  12. GULP案例1:计算声子色散曲线和态密度
  13. 武林外传自动寻路CALL
  14. 信息不对称套利之 - 羊毛党
  15. SONET/SDH技术讲解
  16. oracle查询dictionary,Oracle的DICTIONARY/DICT视图。
  17. Week4 互评作业 (接口、抽象类练习)
  18. eChat(微聊天)
  19. java 实现将图片替换到word 文档中
  20. 什么是图论和图论在数字图像中的应用

热门文章

  1. Python使用Turtle画孟加拉国国旗
  2. 查看打开物料账期 MMRV 和 MMPV
  3. c语言求商品的总价程序,C语言简单问题,求商品总价。。在线急等大神解答
  4. 设计模式入门(王者荣耀之设计英雄篇)
  5. 分布式系统为什么需要 Tracing?
  6. Google Fonts 谷歌字体的使用
  7. IDEA新旧版本下载指南
  8. 认是计算机第2节知识点,2.2《优化计算机》教案
  9. 【干货】麦肯锡七步成诗解决问题方法最新原版课件.pdf(附下载链接)
  10. 动网8.2版本的注入漏洞的利用