MySQL数据库基础

文章介绍了MySQL数据库的基础语法,包括显示和创建数据库、选择与删除数据库的命令。讨论了常用的数据类型,如字符串、日期和数值类型,并详细解释了各种类型的使用场景和对应的Java类型。此外,还涵盖了表的操作,如查看表结构和创建、删除表的SQL语句。
摘要由CSDN通过智能技术生成

MySQL数据库基础

语法前提

  1. SQL的关键字不区分大小写的
  2. 创建数据库的名字可以随便起,但是不能重复
  3. 单词之间至少有一个空格,也可以有多个空格
  4. 当我们使用命令行中输入sql必须以 ; 作为结尾

1数据库操作

1.1 显示当前的数据库

show databases;

1.2 创建数据库

语法:

create databases [if not exists] db_name [create_specification [, 
create_specification] ...]

create_specification: 
	[defalut] character set charset_name
	[default] collate collation_name
说明:
1. 关键字
create databases;
if not exists;
defalut;
character set;
collate;
2. []中的内容是可选项
3. character set:指定数据库采用的字符集
4. collate:指定数据库字符集的校验规则 

示例:
创建名为test1的数据库

create database test1;

在这里插入图片描述
当我们选用第二种方式创建test2数据库
如果系统中没有一个名为test2的数据库,则创建如果有则不创建

create database if not exists test2;

在这里插入图片描述
如果系统不存在test3的数据库,则创建一个使用utf8mb4字符集的数据库,反之则不创建

create database if not exists test3 character set utf8mb4;

在这里插入图片描述
此时我们使用
show databases;
可以看到我们创建的数据库
在这里插入图片描述

1.3 使用数据库

use 数据库名;

1.4 删除数据库

drop database [if exists] 数据库名;

2.常用数据类型

2.1 数据类型:

数据类型大小说明对应的Java类型
bit[(m)]m指定数,默认为1二进制数,m范围从1到64存储数值范围从0到2^m-1常用Boolean对应bit,此时默认是1位,即只能存0和1
tinyint1字节Byet
smallint2字节Short
int4字节Integer
bigint8字节Long
float(m,d)4字节单精度,m指定长度,d指定小数位数,会发生精度丢失Float
double(m,d)8字节Double
declmal[m,d]m/d最大值+2双精度,m指定长度,d表示小数点位数.精确数值BigDecimal
numeric(m,d)m/d最大值+2和decimal一样BigDecimal

补充:
数值类型可以指定为无符号(unsigned),表示不取负数.
1字节(bytes) = 8bit.
对于整数类型的范围:

  1. 有符号范围:-2^(类型字节数8-1)到 2^(类型字节数8-1)-1,如int是4字节,就
    是-2^31 到 2^31-1
  2. 无符号范围:0到2^(类型字节数*8)-1,如int就是 2^32-1
  3. 尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。

2.2字符串类型

数据类型大小说明对应Java类型
varchar(size)0~65535字节可变长度字符串Srting
text0~65535字节长文本数据String
mediumtext0-16 777 215字节中等长度文本数据String
blob0~65535字节二进制形式的长度文本数据byte[]

2.3类型日期

数据类型大 小说明对应java类型
datetime8字节范围从1000到9999年,不会进行时区的检索及转换。java.util.Date、java.sql.Timestamp
timestamp4字节范围从1970到2038,自动检索当前区并进行转换.java.util.Date、java.sql. Timestamp

3. 表的操作

需要操作数据库中的表时,需要先使用该数据库:

use 数据库名;

3.1查看表结构

desc 表名;

3.2创建表

语法:
create table table_name (
field1 datatype,
field2 datatype,
field3 datatype
);
可以使用comment郑家字段说明
示例:

create table stu_test (
   id int,
   name varchar(20) comment '姓名',
   password varchar(50) comment '密码',
   age int,
   sex varchar(1),
   birthday timestamp,
   amout decimal(13,2),
   resume text
);

在这里插入图片描述
3.4删除表
语法

dorp [temporary] table [if exists] 表名;

示例:

-- 删除 stu_test 表
drop table stu_test;
-- 如果存在 stu_test 表,则删除 stu_test 表
drop table if exists stu_test;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值