写在前面
博主旨在将一些基本的mysql
的功能和基础sql
语句介绍!
水平有限,还望大佬多多指教!
本章目标
1.学习MySQL
数据库的基本操作
2.掌握简单的SQL
语句
3.能够自己在命令行中实现数据库的增删改查
4.了解MySQL
的索引和事务
5.学会Mysql jdbc
编程
数据库的操作
显示当前数据库
- 显示数据库操作,我们可以查看我们
mysql
下已经创建好的数据库,以及mysql
自带的一些数据库!
SQL语句
show databases;
注意
我们这里的SQL
语句都要带上;
和其他语言一样!
不过其实SQL
语句有些并不都有加;
但是在命令行下面,如果我们不加上;
计算机并不知道我们这个语句是否结束,我们回车是否是为了换行!!!所以SQL
语句的;
我们还是要带上!!!
我们可以看到博主中的mysql
数据库中有15
数据库!!!
其中包含mysql
自带库sys
,mysql
等等!!!
创建数据库
我们如何创建一个自己的数据库呢?
肯定也是通过SQL
语句啦
SQL语句
create database `数据库名`;
可以看到我们成功的创建了一个名为
java_2022
的数据库!
当我们再次查看mysql
时java_2022
数据库已经存在!!!
注意
只要我们的sql
语句没有输入错误,并且该数据库中,不含你要创建的数据库,那么你就能将该数据库创建成功!!
并且但我们进行一条SQL
语句后,后面都会提示是否成功!!!如果看到OK,n row affected;
(成功,多少条语句受到影响的提示那么你的sql就执行成功了);
使用数据库
当我们创建了数据库后,我们便可以使用该库储存数据了!
而我们的mysql
数据库是通过一张张的表结构,保存数据,存储到数据库中!!!
SQL语句
use 数据库名;
执行完sql语句后,便选中了java_2022
数据库了
我们就可以对该数据库进行数据的操作(表的增删查改)
删除数据库
当我们需要删除某些数据库时!!!
SQL语句
drop database 数据库名;
我们再次查看数据库:
mysql
中已经删除了名为java_2022
的数据库!!!
注意:
删除操作是否危险,谨慎使用!!!
当我们此条语句一执行,那么该数据库中的表和数据就不存在了!!!
我们知道数据库顾名思义就是存储数据的,而如今是个数据的时代,有些数据是十分值钱的,如果我们在今后的工作中将公司的某些重要的数据库删除,那么后果不堪设想!!!所以删库操作需谨慎!!!
常用数据类型
像我们其他的编程语言一样,mysql
也有自己的数据类型!!!
我们可以通过不同的类型记录不同的数据
例如:java
中 用;byte int short long
类型存储整型,通过该整型字节大小,存到对应的类型中,通过string
存储字符型!
mysql
常用的数据类型
数值类型
分为整型和浮点型:
数据类型 | 大小 | 说明 | 对应java 类型 |
---|---|---|---|
bit(m) | m指定位数,默认为1 | 二进制数,m的范围从1到64,存储数值范围从0到2^m-1 | 常用的boolea对应bit,此时默认是一位,即只能存放0或1 |
tinyint | 1字节 | byte | |
smallint | 2字节 | short | |
int | 4字节 | int | |
bigint | 8字节 | long | |
float(m,d) | 4字节 | 单精度,m指定长度,d指定小数位数,会发生精度丢失 | float |
double(m,d) | 8字节 | double | |
decimal(m,d) | m/d最大值+2 | 双精度,m指定长度,d指定小数位数,精准数值 | bigdecimal |
numeric(m,d) | m/d最大值+2 | 和decimal一样 | bigdecimal |
注意: | |||
扩展资料 | |||
数值类型可以指定为无符号(unsigned),表示不取负数 | |||
1字节(bytes)= 8bit。 | |||
对于整型类型的范围: |
- 有符号范围:-2^(类型字节数8-1)到 2 ^(类型字节数8-1)-1, 如int是4字节,就是-2^ 31 到 2^31-1
- 无符号范围:0到 2^ (类型字节数*8)-1,如int就是2^32-1
尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。
字符串类型
数据类型 | 大小 | 说明 | 对应java 类型 |
---|---|---|---|
varchar(size) | 0-65,535字节 | 可变长度字符串 | String |
text | 0-65,535字节 | 长文本数据 | String |
mediumtext | 0-16 777 215字节 | 中等长度文本数据 | String |
blob | 0-65,535字节 | 二进制形式的长文本数据 | byte[] |
日期类型
数据类型 | 大小 | 说明 | 对应java 类型 |
---|---|---|---|
datetime | 8字节 | 范围从1000到9999,不会进行时区的检索和转换 | java.util.Date java.sql.Timestamp |
timestamp | 4字节 | 范围从1970到2038,自动检索当前时区并进行转化 | java.util.Date、java.sql.Timestamp |
我们可以通过timestamp
类型,记入数据库中该条数据的添加时间!
表的操作
当我们要对某一数据库进行表操作时,我们先要选中数据库,也就是刚刚我们的使用数据库操作
use 数据库名;
显示当前数据库表
show tables;
可以看到和显示数据库一样,通过该sql
我们便可以查看,当前数据库中有多少张表!!
可以看到 ebook
数据库中有4张表!!!
查看表结构
desc 表名;
我们通过该sql
可以查看某张表的变量以及类型!
创建表
create table 表名(变量 类型;.....变量 类型);
注意:
mysql
创建字段时 ,变量名在前,类型在后!!!
删除表
drop table 表名;
危险操作,慎重!!!