java 61 处理_【JavaWeb】61:数据记录基本操作

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

感谢你的观看,谢谢你。

话不多说,开始今天的学习:

fe8391da885596497780747ff14a8d71.png

一直听人说,程序员面试,面试官喜欢聊底层原理,聊数据结构与算法,聊多线程与高并发。

等你进去以后就是每天CRUD,每天加班。

虽然当时有点听不懂,但我还是将CRUD记下了下,毕竟很常用很重要的样子。

后来发现其实就是增删改查。

一开始学集合的时候,发现集合的方法基本都是增删改查,莫非说的就是它?

那看来很重要啊,必须学好。

现在才发现自己想的太简单了,CRUD不是简简单单的集合,而是数据库?

前天学了对数据库本身的操作;

昨天学了对数据表本身的操作;

今天继续学对数据表里的数据记录操作。

一样的道理,无外乎都是增删改查:

一、增加数据记录

insert,插入添加的意思,也就是增加。

74a54782e6d490f6bf6e7fb0369c7423.png

①增加数据(全写)

insert into student1(id,username,gender,address)values (null,'刘小爱','男','上海');

给表添加一行数据,每一列都要赋值,格式为:

insert into+表名+所有列名+values+所有值

因为主键设置了自增长,可以直接书写null

但是这种格式太繁琐了,可以省略部分列。

②增加指定列的数据

如果有一列的数据可以为空或者有默认值,可以省略不赋值,也就是上图中的Null和Default两列。

因为主键设置了自增长,也相当于有默认值,所以id和address这两列可以省略。

insert into student1(username,gender)values('张三','男');

给表中指定列的数据赋值,格式为:

insert into+表名+指定列+values+对应值

③省略所有列(简写)

insert into student1 values(null,'李四','男','武汉');

将所有列名省略,但每一列都要赋值,格式为:

insert into+表名+values+所有值

注意:

SQL中字符串用单引号而不是双引号,和Java中不一样。

列约束若是unique,唯一的,那么添加数据不允许重复。

列约束若是not null,不允许重复的,同时又没有默认值的话,那么必须添加数据。

二、修改数据记录

update,更新的意思,也就是修改。

65d5c3aa470b93b9728c3f0e0454af52.png

①修改整列数据

update student1 set address='北京';

将address这一列所有数据改成北京,格式如下:

update+表名+set+列名+值

②修改指定行的列数据

update student1 set gender='女'where username='张三';

将gender这一列中username为‘张三’的数据修改成‘女’,格式如下:

update+表名+set+列名+值+where+指定条件。

where等于是加了一个指定条件。

③使用运算修改指定行的数据

update student1 set age=age+2 where username=‘张三’;

格式同上,不过在运算时注意:

SQL中没有+=这样的运算符,和Java不一样。

其中!= 和    都表示不等于。

三、删除数据记录

delete,删除的意思。

b9285f8fb30393d1d3ff295d6c49b9de.png

①删除指定的数据

delete from student1 where username='李四';

删除username为‘李四’的整行数据,格式如下:

delete from+表名+where+指定条件

②删除表所有数据

delete from student1;

③也是删除表所有数据

truncate,截断的意思,也就是删除的意思。

truncate table student1;

附面试题:delete,truncate,drop之间的区别?

delete:删除数据是一行一行删除,数据有可能会被恢复。

truncate:先删除表,再创建表,就等于将数据全部删除了。

drop:删除表的时候是删除整张表,表都没了,数据肯定也没了。

所以truncate和drop都是对表本身的操作,语法中有table这个单词。

delete是对表中数据的操作,对表本身没有操作。

四、查询数据记录(基础查询)

select,选择的意思,也就是查询。

60d8416b5d9b3ecd048205a7bc72e224.png

select * from student1;

*代表所有的意思,即查询表中的所有数据。

然后我悲催地发现……查询操作太多了,可以说增删改加起来都没有它多。

用命令行操作的本意是想让自己对单词进一步加深印象,但是实在是太多了,所以上可视化工具。

我这边使用的可视化工具是Navicat。

详细的安装步骤不便讲解,直接连接数据库:

f522369269b58d109d41702f58e0350d.png

可以连接多种数据库,我们选择MySQL:①连接名

自定义创建一个连接名,以便于自己做区分,不创建也不影响。

②IP+端口

数据库在本机,所以用localhost表示本地主机,3306是默认端口。

③用户名+密码

即在安装数据库时设定的一个密码。

连接好后体验了下,发现真香。

至于更多的查询操作明天继续详细学习。

最后

回到开头的问题,CRUD增删改查:

C:应该是create,即增

U:应该是update,即改

D:应该是delete或者drop,即删

R:至于这个R应该就是查了,但是查询不是select么,应该是s呀。

看来CRUD也不是简简单单的这几天在学的操作。

谢谢你的观看。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值