MySQL数据库基础知识_MySQL数据库的特点

MySQL数据库基础知识_MySQL数据库的特点了解mysqlmysql是一个关系型数据库:以库、表、行、列这种关系模型组织数据Mysql使用时的注意事项每日一条数据库操作语句都应该以分号;结尾,因为mysql支持换行操作mysql数据库对大小写不敏感,大小写皆可,通常关键字使用大写表示mysql数据库中哭的名称应该以英文字符或者一些符号起始,但是不允许以数字起始mysql数据库中哭的名称、表的名称、字段的名称都不能使用mysql关键字,比如create、database;如果非要使用,那就用反引号括起来库的操作查看mysql

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Mysql使用时的注意事项

  1. 每日一条数据库操作语句都应该以分号 ;结尾,因为mysql支持换行操作
  2. mysql数据库对大小写不敏感,大小写皆可,通常关键字使用大写表示
  3. mysql数据库中哭的名称应该以英文字符或者一些符号起始,但是不允许以数字起始
  4. mysql数据库中哭的名称、表的名称、字段的名称都不能使用mysql关键字,比如create、database;如果非要使用,那就用反引号括起来

库的操作

查看mysql中的所有库:show databases;
创建库:create database 库名称;—-》create database if not exists 库名称;如果不存在该库,则创建
删除库:drop database 库名称;
选择使用数据库:use 库名称;
显示当前使用的数据库:select database();

数据类型

数值类型

MySQL支持所有标准SQL数值数据类型。

这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)

关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。
在这里插入图片描述

日期和时间类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR

每个时间类型有一个有效值范围和一个”零”值,当指定不合法的MySQL不能表示的值时使用”零”值。

在这里插入图片描述

字符串类型

字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET
在这里插入图片描述

注意:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
BINARY 和 VARBINARY 类似于 CHAR 和 VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。
BLOB 是一个二进制大对象,可以容纳可变数量的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围不同。
有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度不同,可根据实际情况选择。

表的操作

显示库中所有的表:show tables;
创建表:create table if not exists tb_stu(id int,name varchar(3),age int, birthdatetime);
在这里插入图片描述

查看表结构:desc tb_stu;
在这里插入图片描述

删除表:drop table tb_stu;

表中数据的增删改查基础

插入数据:insert

指定列插入:可以指定单独个一个或几个列信息进程插入,并且前缀列信息
insert [into] tb_stu(id,name) values (1,“韩云溪”);
全列插入:可以省略前缀的列信息,按照列顺序插入所有列的数据
insert [into] tb_stu values (1,“韩云溪”,21,“2000-03-19 12:00:00”);
多行插入:
insert [into] tb_name values(val1,val2…),(val1,val2…),…;
insert [into] tb_stu values (3,“三三”,17,now()),(4,“四四”,18,now());
在这里插入图片描述

查询数据:select

查询指定表中所有数据:select * from tb_name;
在这里插入图片描述

指定列查询:select name,birth from tb_stu;
在这里插入图片描述
排序查询:select * from tb_stu order by age [asc]/desc;按照年龄排序查询
默认为asc升序查询,desc为降序查询
在这里插入图片描述
多列排序:在第一列相同的情况下针对第二列进行排序:select * from tb_stu order by age ,id desc;
在这里插入图片描述
分页查询:通常搭配排序一起使用
select * from tb_stu limit m offset n;—–分页查询,每页显示m条数据,偏移到第n条开始显示m条数据(即从第n条起,显示一页)
在这里插入图片描述
查询字段为表达式:
select name,id+age from tb_stu;—-按照name和id+age的值分列查询

在这里插入图片描述
查询时,字段别名的使用:
select name,id+age [as] total from tb_stu
; —–给id+age起了个别名叫total,as可以省略
在这里插入图片描述
去重:
select distinct age from tb_stu ;
—–根据age查询,并对age去重
在这里插入图片描述

条件查询

按照一定的限制条件进行查询,限制条件通过where子句给出

例如:按照id>1的限制条件进行查询:select * from tb_stu where id>1;
在这里插入图片描述

where子句涉及的运算符:
在这里插入图片描述
另外还有:> = <(大于、等于、小于)可以和NULL进行比较
is NULL/is not NULL 可以用来判断是否为空

IN的使用:判断查询的数据是否是给予的多个选项之一
例如:select * from tb_stu where name in(“韩云溪”,“夏紫藤”);—–查询名字为韩云溪或夏紫藤的项,符合则显示,不符合则忽略
在这里插入图片描述
between A and B 的使用:查询范围介于AB两者之间项
select * from tb_name where id between 1 and 3; —–查询id介于1和3之间的项
在这里插入图片描述
LIKE 模糊匹配的使用:查询一个数据看起来像某个条件
select * from tb_stu where name like ‘韩%’;—–查询表中姓名以韩开头的项,%为通配符
在这里插入图片描述
逻辑运算符的使用:与and、 或or、 非not
select * from tb_stu where age>17 and age<22;—–查询表中年龄大于17并且小于22的项
在这里插入图片描述

修改数据:update

update tb_name set fields1=val1,fields2=val2 where condition;—-尤其注意不要忘了where限制条件,否则整张表的该列数据都会更改

删除数据:delete

delete from tb_name where condition;—-尤其注意不要忘了where限制条件,否则整张表的数据都会被删除

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171519.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • WinForm 界面美化

    WinForm 界面美化主界面的扁平化更改winform自带的MainForm窗体属性将主窗体FormBorderStyle更改为None,这样就得到了一个无边框的窗体调节背景色,找到自己喜欢的颜色,输入到BackColor属性中在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动:[DllImport(“user32.dll”)]publicstaticexternboolReleaseCapture();[DllImport(“user32.dll”)]publicstatic

  • 学生成绩管理系统——JAVA

    学生成绩管理系统——JAVA学生成绩管理系统1.简介本学生成绩管理系统具有录入学生成绩、查询学生成绩、输出学生按成绩的排名、输出学科的分数四个功能,其中后两个功能在“输出成绩”这一目录下。此系统可以实现学生成绩管理的一些基本操作。1.1各模块功能简介录入成绩输入若干同学的学号、姓名以及四个科目的成绩(应用数学、大学英语、Java程序设计、计算机应用基础),并将其保存在建立好的数据库中。查询成绩进入该模块后,输入想要查询成绩的学生姓名,即可在数据库中检索该学生的成绩信息并输出其各科成绩。输出成绩该模块主要分为两

  • pytest的使用_新代子程序重复调用

    pytest的使用_新代子程序重复调用Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

  • Spring中的注解 @RequestBody和@ResponseBody的使用和区别

    Spring中的注解 @RequestBody和@ResponseBody的使用和区别一、@RequestBody@RequestBody的作用是将前端传来的json格式的数据转为自己定义好的javabean对象如图以微信小程序为例,前端向后端传入如下json格式的数据需要注意的是传入数据的属性名称要和后端javabean中定义的一致发送请求后可以看到在控制台中我们通过javabean对象的get方法打印出了前端传来的值,说明json数据已经成功的被转换为了javab…

  • 微信小程序-开发入门(一)

    微信小程序-开发入门(一)微信小程序已经火了一段时间了,之前一直也在关注,就这半年的发展来看,相对原生APP大部分公司还是不愿意将主营业务放到微信平台上,以免受制于腾讯,不过就小程序的应用场景(用完即走和二维码分发等)还是很值

  • isnotempty和isnotnull_BlankBlood

    isnotempty和isnotnull_BlankBlood先看看isEmpty和isBlank  从效果来看,当a=””,字符中有空格时,IsEmpty是算他不为空的本质上讲:isEmpty等价于str==null||str.length==0isBlank等价于str==null||str.length==0||str.trim().length==0我们再来看非空:is…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号