常州模板网站建设价位,吉林网站网站建设,一个域名怎么用来做多个网站,南京建设厅官方网站目录
数据库介绍
什么是数据库
数据库的分类
1. 数据库的操作
创建数据库
显示数据库
使用数据库
删除数据库 2. 表的操作
创建表
删除表
3. 常用数据类型
插入数据
查询数据 从本篇起就又要开始新的篇章了#xff0c;数据结构初级阶段的就告一段落了#xff0…目录
数据库介绍
什么是数据库
数据库的分类
1. 数据库的操作
创建数据库
显示数据库
使用数据库
删除数据库 2. 表的操作
创建表
删除表
3. 常用数据类型
插入数据
查询数据 从本篇起就又要开始新的篇章了数据结构初级阶段的就告一段落了等把后面的JavaEE初级阶段学习完又会回到数据结构进阶部分。
本章开始就是主打MySQL了。
MySQL是个啥其实就是个数据库那么数据库又是个啥
首先来介绍以下什么是数据库。
数据库介绍
什么是数据库
数据库简单来说就是用来存储文件的如何存储又要牵扯到很多这里就不展开了可以参考
数据库发展史 - 知乎 (zhihu.com)
随着时代的发展大部分数据都是存储在文件当中的那为什么还要弄个数据库? 对比以下优缺点
文件保存数据有以下几个缺点
文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便
数据库中的数据一般存储在内存和磁盘中。
数据库的分类
数据库大体可以分为 关系型数据库 和 非关系型数据库
关系型数据库RDBMS是指采用了关系模型来组织数据的数据库。 简单来说关系模型指的就是二维表格模型而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。基于标准的SQL只是内部一些实现有区别。常用的关系型数据库如
Oracle甲骨文产品适合大型项目适用于做复杂的业务逻辑如ERP、OA等企业信息系统。收费。 MySQL属于甲骨文不适合做复杂的业务。开源免费。 SQL Server微软的产品安装部署在windows server上适用于中大型项目。收费。
非关系型数据库了解不规定基于SQL实现。现在更多是指NoSQL数据库如基于键值对Key-Value如 memcached、redis 基于文档型如 mongodb 基于列族如 hbase 基于图型如 neo4j
关系型数据库与非关系型数据库的 区别
关系数据库非关系型数据库使用SQL是不强制要求一般不基于SQL实现事务支持支持不支持复杂操作支持不支持海量读写操作效率低效率高基本结构基于表和列结构固定灵活性比较高使用场景业务方面的OLTP系统用于数据的缓存、或基于统计分析的OLAP系统
关于数据库如何安装等等我这里就不过多介绍了我直接抄一篇博客链接如下
Windows安装mysql详细步骤通俗易懂简单上手_华夏之威的博客-CSDN博客https://blog.csdn.net/weixin_43423484/article/details/124408565而我们主要学习的就是MySQL因为它开源免费
接下来开始进入正题数据库如何操作的。
1. 数据库的操作
MySQL服务器中的数据库可以有很多个分别存储不同的数据想要将数据存储到数据库中首先要创建一个数据库我们来看看如何创建一个数据库
创建数据库
首先登陆我们的数据库 第二步创建一个数据库语法格式 create database 【数据库名称】【库选项】 库选项主要就一些字符集引擎什么的这里就不多介绍需要的话可以去查。
java就是数据库名称字符集设置为utf-8 后面添加数据时就可以添加汉字了。
显示数据库
既然创建了我们可以查看我们创建的数据库是否存在MySQL服务器中语法格式如下 show databases; java雀氏已经存在了里面有的是我自己创建的也有是系统自带的。
使用数据库
既然创建了那就来用用看语法格式如下 use 数据库名称; 数据中系统提示的很多单词相信大家都认识我也就不介绍了。
这样我们就进入到了java这个库中了我们再来看看库中有些啥 嘿嘿啥也没有。
删除数据库
这一步操作非常危险啊除非有需要不然千万不要进行这一步操作不然小手一点分分钟让老板损失上百万但是我们的数据库啥也没有我们一次性删爽来。
语法格式如下 drop database 数据库名称; 再来看看服务器中是否还存在; 只有10行了雀氏删除成功了还是得提醒以下千万不要手欠删库啊分分钟丢失工作。 2. 表的操作
我们先前创建了一个数据库名叫java的库中的内容啥也没有数据库中存放的就是表了emoty 指的就是表所以这一部分就是如何去创建表。
创建表
语法格式 create table 表名( 字段名 字段类型属性 字段名 字段类型属性,.......)【表选项】 这里面的我们一 一来解释表选项和前面的一样也是指字符集存储引擎校对集。
字段名就是指表的列名字段类型就是指数据类型
属性指的是对字段的某些约束条件等等。
我们拿个图来看看 从左往右开始Field 和 Type 翻译 过来就知道是字段和类型的意思
Null 确定该字段是否为空Key指的是索引类型Default 指的是默认值 Extra 表示扩充
其实可以直接翻译以下就懂了。
这里涉及到查看表结构的语法 desc 表名desc 对应的单词就是description 【后面还有一个关键字也是desc】 删除表
有创建就有删除对应的语法如下 drop table 表名 ; 类似于删库好吧就是一个语法。
同样删表也是个非常危险的操作除非有需要不然不要轻易尝试分分钟离职蹭现在我们删爽来 这就ok了还是提醒以下啊千万不要手欠删表不然真的就g了。
一天一个离职小技巧 ~~
介绍了创建表和删除表但是我们还是没有开始插入数据在讲插入数据之前我们得对数据类型进行一个了解
3. 常用数据类型
无论数据类型都得贴近我们的生活不会太离谱本身数据库的目的就是存储数据的正常而言数据就那么几中类型和Java、C一样 都是有整型的浮点型的但是还是略有区别的。
从整型和浮点型开始介绍
整型和浮点型
数据类型大小说明对应java类型BIT[ (M) ]M指定位 数默认 为1二进制数M范围从1到64 存储数值范围从0到2^M-1常用Boolean对应BIT此时 默认是1位即只能存0和1TINYINT1字节ByteSMALLINT2字节ShortINT4字节IntegerBIGINT8字节LongFLOAT(M, D)4字节单精度M指定长度D指定 小数位数。会发生精度丢失FloatDOUBLE(M, D)8字节DoubleDECIMAL(M, D)M/D最大 值2双精度M指定长度D表示 小数点位数。精确数值BigDecimalNUMERIC(M, D)M/D最大 值2和DECIMAL一样BigDecimal
当然啦MySQL和c语言类似数值类型可以指定为无符号unsigned表示不取负数。
如果当我们int都存不下去了就换一个类型没必要去纠结使用unsigned 和 signed signed都存不下去unsigned 大概率也存不下去。
字符串类型
数据类型大小说明对应java类型VARCHAR (SIZE)0-65,535字节可变长度字符串StringTEXT0-65,535字节长文本数据StringMEDIUMTEXT0-16 777 215字节中等长度文本数据StringBLOB0-65,535字节二进制形式的长文本数据byte[]
这没什么好介绍的就只需要认识一个 blob 是存储二进制的要用到时百度即可。
日期类型
数据类型大 小说明对应java类型DATETIME8 字 节范围从1000到9999年不会进行时区的 检索及转换。java.util.Date、 java.sql.TimestampTIMESTAMP4 字 节范围从1970到2038年自动检索当前时 区并进行转换。java.util.Date、 java.sql.Timestamp
和字符串一样不会比较不会添加没关系要用时直接百度。
等会我也来演示以下。
到现在我们就可以开始进行插入数据了。
插入数据
语法格式 insert into value(值1值2......)【单行插入】 insert into values(值1值2......),(值1值2......)【多行插入】 我们用多行插入的语法去插入一行记录也是可以滴
示例 一行插入没问题我们再来看看多行插入 既然插入欧克那么我们再来看看服务器中是否已经存在我们添加的数据
查询数据 语法格式 select * from 表名【这是全列查询】 这种查询真正工作时并不推荐公司里的数据不同于我们自己写的他们可能动则就上几十万条数据我们一查带宽直接崩了所以这条查询语句也非常危险
我们来看看结果如何 的确能够查询出表中的数据
当然还有其他很多查询语句今天就先到这里其他的留给后面再细说本章就到此为止先对MySQL有部分的了解