MySql根底

Java中数据贮存形式比照

贮存形式长处毛病
内存速度快不能永恒保留,数据的贮存是长期的
文件数据可永恒保留操作数据不不便
数据库1. 数据可永恒保留
2.查问速度快
3. 对数据的治理不便
占用资源,有的数据库须要购买

什么是数据库

  • 存储数据的仓库
  • 实质上是一个文件系统,还是以文件的形式存在在服务器的电脑上的。
  • 应用通过的【SQL语句】对所有的关系型数据库进行数据管理。

常见的数据库

下面是市场上前20位的数据库排行榜,上面我对咱们工作中可能会接触到的一些数据库进行简略的介绍。

  • MySql:开源收费的数据库,小型的数据库。起初 Sun 公司收买了 MySQL,而 Sun 公司又被 Oracle 收买,现隶属于Oracle公司。MySQL6.x 版本也开始免费。
  • Oracle:付费的大型数据库,价格较高,Oracle公司的产品。
  • DB2:IBM公司的付费数据库产品,罕用于银行零碎中。
  • SQL Server:MicroSoft公司付费的中型数据库。大学中教科书应用的数据库,C#、net等语言常应用。
  • SQLite:嵌入式的小型数据库,利用在手机端,如:Android。

MySql的装置与卸载

MySQL5.7下载、装置和配置 - 简书 (jianshu.com)

卸载mysql时,如何卸载洁净! - 隋雪儿吖 - 博客园 (cnblogs.com)

MySql启动与登录

启动MySql

MySQL 服务器启动形式有两种:

  • 通过服务的形式主动启动

    1. 通过【windows powerShell】输出命令services.msc,关上【服务】。

    2. 在【服务】窗口中,输出m找到【MySql】一项,并将【启动类型】设置为【主动】。

  • 手动启动的形式

    1. 以【管理员】的形式关上【windows powerShell】

    2. 输出命令net start <mysql服务名称>,启动【MySql】服务。如果须要手动敞开,输出net stop <mysql服务名称>既可。

登录MySql

MySQL 是一个须要账户名明码登录的数据库,登陆后应用,它提供了一个默认的 root 账号,应用装置时设置的明码即可登录。

  1. 登录格局一:输出mysql -u用户名 -p明码,间接回车既可(登录失败,能够为用户名或明码加上"")。

  2. 登录格局二:输出mysql -u用户名 -p回车,而后更平安的输出明码,最初回车既登录(登录失败,能够为用户名加上"")。

  3. 登录格局三:输出mysql -h数据库ip地址 -u用户名 -p明码,而后回车(登录失败,能够为ip地址、用户名或明码加上"")。

  4. 登录格局四:输出mysql --host=数据库ip地址 --user=用户名 --password=明码,而后回车(登录失败,能够为ip地址、用户名或明码加上"")。

退出Mysql

  1. 退出格局一:输出exit,而后回车既可

  2. 退出格局二:输出quit,而后回车既可

MySql目录构造

MySql下的目录或文件形容
bin外面贮存着所有MySql可执行的文件,如:mysql.exe
bin/MySQLInstanceConfig.exe数据库的配置向导,在装置时呈现的内容
dataMySql自带的数据库所在的目录
my.inimysql 的配置文件,个别不倡议去批改。
C:\ProgramData\MySQL\MySQL Server 5.5\data咱们本人创立的数据库所在的文件夹

数据库管理系统、数据库和表的关系

  1. 一个数据库服务器蕴含多个数据库
  2. 一个数据库蕴含多张表
  3. 一张表蕴含多条记录

MySql数据类型

罕用的数据类型

类型名称类型阐明
int整型
double浮点型
varchar字符串型
date日期类型。
格局为yyyy-MM-dd,只有年月日,没有时分秒

具体的数据类型

类型名称类型阐明
tinyint微整型:很小的整数(占8位二进制)
smallint小整型:小的整数(占16位二进制)
mediumint中整型:中等长度的整数(占24位二进制)
int(integer)整型:整数类型(占32位二进制)
float单精度浮点数,占4个字节
double双精度浮点数,占8个字节
time示意工夫类型
date示意日期类型
datetime同时能够示意日期和工夫类型
char(m)固定长度的字符串,无论应用几个字符串都占满全副,M为0~255之间的整数
varchar(m)可变长度的字符串,应用几个字符串就占用几个,M为0~65535之间的整数
tinyblob容许长度0~255字节
blob容许长度0~65535字节
mediumblob容许长度0~167772150字节
longblob容许长度0~4294967295字节
tinytext容许长度0~255字节
text容许长度0~65535字节
mediumtext容许长度0~167772150字节
longtext容许长度0~4294967295字节

MySQL运算符

运算符阐明
\>、<、<=、>=、=、<><>在 SQL 中示意不等于,在 mysql 中也能够应用!= 没有==
BETWEEN...AND在一个范畴之内,如:between 100 and 200 相当于条件在 100 到 200 之间,包头又包尾
IN(汇合)汇合示意多个值,应用逗号分隔
LIKE '张%含糊查问(%匹配任意多个字符串,_匹配一个字符)
IS NULL查问某一列为 NULL 的值,注:不能写=NULL
and 或 &&与,SQL 中倡议应用前者,后者并不通用。
or 或 \\
not 或 !

SQL语句

SQL概述

  1. Structured Query Language——结构化查询语言
  2. 通用的数据库操作语言,是一种所有关系型数据库的查问标准,不同的数据库都反对。
  3. 但不同的数据库 SQL 语句有一些区别。

SQL分类

SQL语句粗略的能够分为四大类:

分类作用
数据定义语言DDL(Data Definition Language)用来创立数据库中的各种对象-----表、视图、索引、同义词、聚簇
数据操纵语言DML(Data Manipulation Language)对表中的记录操作——增、删、改。
数据查询语言DQL(Data Query Language)对表中信息的进行查问操作
数据管制语言DCL(Data Control Language)用来授予或回收拜访数据库的某种特权,并管制数据库操纵事务产生的工夫及成果,对数据库履行监督等。

Sql语法

  • 每条语句以分号结尾,如果在 SQLyog 中不是必须加的。
  • SQL 中不辨别大小写,关键字中认为大写和小写是一样的
  • 正文有三种格局:

    1. -- ,这是单行正文,留神--肯定要加空格。
    2. #,这也是单行正文,也是MySql特有的。
    3. /* */,这是一个多行正文。