【JavaWeb】60:数据表基本操作

今天是刘小爱自学Java的第60天。

感谢你的观看,谢谢你。

话不多说,继续数据库MySQL的学习:

在这里插入图片描述

昨天学习的是对数据仓库的操作(增删改查)

在一个数据仓库里是可以创建无数张数据表的。

所以今天主要学习对数据表的操作。

其中table,在数据库中便是表的意思,它是挺重要的一个单词。

一、数据表结构

行与列,构成了一张数据表,其实可以将数据表和Java之间联系起来的。

在这里插入图片描述

①第一行

这一行就相当于Java中的一个类,比如说Student类。

②第二行以及后面的所有行

就相当于Java中Student类对应的一个对象:

  • Student liuxiaoai =new Student();
  • Student zhangsan=new Student();
  • Student lisi=new Student();

③所有列

每一列就相当于类中的属性(成员变量)

有四个成员变量:id、姓名、性别、地址。

每个对象都有自己对应的属性值。

二、基本数据类型

既然是操作数据,肯定会有各种各样的数据类型。

在Java中有四类八种,在SQL中也有其对应的数据类型,我们将其做一个对比:

在这里插入图片描述

①整数型

其实还蛮好记的,SQL有五种,都以int为后缀。

  • tiny,微小的,故对应Java中的byte。我记得小时代的翻译就是tiny times,我当初还在想为何不是small times…

  • smallint对应的是Java中的short。

  • medium,中等的,这是SQL中特有的。

  • big,大的,故对应Java中long。

②小数型

Java中和SQL中一样。其中SQL中:

float(5,2)表示字段共5位长度,可以有两位小数。

③字符型

Java中的字符串在SQL中是varchar。

  • varchar,翻译过来就是可变化的字符,它的长度是可以变化的,自适应可短不可长
  • varchar(20)就是表示字段长度为20以内都可以,它会根据不同的字段自动适应长度。
  • varchar可以节省空间,一般会使用它。
  • char的长度是固定的,比如身份证手机号可以使用它。
  • char(20)就是表示字段长度为20,如果没有20,用空格补全。
  • char的性能高(长度不用经常变换)

三、其他数据类型

在这里插入图片描述

①大数据类型

在Java中就是IO流来传输数据了。

在SQL中分别是blob,binary,text:

  • blob,翻译就是二进制对象,即对应字节。
  • binary,翻译过来也是二进制。
  • text,这是文本,即字符数据

②日期型

在Java中对应的就是几个日期相关的类,在SQL中:

  • date:日期,即年月日
  • time:时间,即时分秒
  • datetime:时间和日期都包含
  • timestamp:时间戳,如果不给当前列插入数据,这列会自动赋值当前时间。

以上便是对Java和SQL中数据类型的对比,毕竟主要是学Java的,将其对比起来记忆也更好理解。

四、创建数据表

在这里插入图片描述
①create table student();

创建student表,其中说明每个字段的类型;

在SQL里和Java正好相反:比如id int;

前面的是字段名,后面的是字段类型。

②show tables;

展示当前数据库下的数据表。

五、查看数据表

在这里插入图片描述

①show create table student;

查看表的创建信息。

②desc student;

desc,描述的缩写,即查看表的详细信息。

③show colume from student;

colume,列的意思,也就是查看表的列信息。

六、单表创建时约束

现在有几个问题:

每一个学生ID要保证唯一,不可重复,同时姓名虽然可以重复但不能为空。

这些问题在SQL中如何实现?
在这里插入图片描述
①主键约束

primary key,翻译过来就是主键。

一张表中的主键只能有一个,并且是唯一不为空的。

就有点类似于每个人的身份证一样,但是身份证它不是唯一的,毕竟可以移民呢。

所以一般都会定义一个字段叫id,保证唯一性。

②唯一约束

unique,唯一的意思。

大名鼎鼎的优衣库:uinqlo,就是unique clothing这两个单词拼接起来的,唯一的衣服,一看就很厉害的样子。

③非空约束

not null,不为空的意思,这个也好理解。

七、修改数据表

这个最复杂了,因为对数据表里的列的各种操作,都属于修改数据表。

先捋一捋对数据表的修改操作有哪些?

  • 增加数据表某一列
  • 删除数据表某一列
  • 修改数据表里某一列
  • 修改数据表名
  • 修改表的字符集

前三个为对表里列的修改,后两个为对数据表本身的修改。

在这里插入图片描述

alter,修改的意思。

①添加列

alter table student2 add age int;

add添加的意思,格式也就是:

add+列名+列数据类型

②删除列

alter table student2 drop age;

drop删除的意思,格式也就是:

drop+列名

我擦,昨天不是都说drop不常见么,这删除列怎么就用到了,真的是啪啪打自己的脸。

③修改列名

alter table student2 change name username varchar(20) unique;

change修改的意思,格式也就是:

change 旧列名 新列名

④修改列的约束

alter table student2 modify username varchar(20) unique not null;

modify也是修改的意思,格式也就是:

modify+列名+新的约束

⑤修改数据表名

rename student2 to student1;

rename也是修改的意思,格式也就是:

rename+旧表名+to+新表名

⑥修改数据表字符集

alter table sutdent1 character set utf8;

character字符的意思,格式也就是;

character+set+新编码表

八、删除数据表

在这里插入图片描述

drop table student;

drop删除的意思,也就是格式为:

drop+table+需要删除的表

以上便是对数据表的增删改查,据说其各种操作都不算太重要,使用的频率不高,毕竟最常见的还是对表里的数据进行操作。

但本着学习的原则,还是将其学了一遍,知其然也要知其所以然,就当是加深记忆了。

最后

谢谢你的观看。

如果可以的话,麻烦帮忙点个赞,谢谢你。

猜你喜欢

转载自blog.csdn.net/qq_41228864/article/details/106749281