先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
自定义复杂的安全权限
提供审计和日志记录
启用复杂的业务逻辑
4.如何DML触发器?
===========
语法
语法:
create [or replace] trigger trigger_name
{before | after} trigger_event
on table_name
[for each row]
[when trigger_condition]
trigger_body
语法解释:
trigger_name:触发器名称
before | after : 指定触发器是在触发事件发生之前触发还暗示发生之后触发
trigger_event:触发事件,在DML触发器中主要为insert、update、delete等
table_name:表名,表示发生触发器作用的对象
for each row:指定创建的是行级触发器,若没有该子句则创建的是语句级触发器
when trigger_condition:添加的触发条件
trigger_body:触发体,是标准的PL/SQL语句块
**2:两个时间点 after before 除了使用序列+触发器实现自动增长为前触发,一般都是后触发
2:两个临时表: :old 老表 :new 新表
2:两种执行模式 行级触发for each row 语句级触发
3:三种操作: insert update delete**
5,案例DML触发器
==========
建表插数据
–创建学生信息表
create table stuInfo
(
stuNo varchar2(6),
stuName varchar2(10),
stuSex varchar2(2),
stuAge int,
stuSeat int,
strAddress varchar2(255)
)
go
–创建学生成绩表
create table stuMarks
(
ExamNo varchar2(7),
stuNo varchar2(6),
writtenExam int,
LabExam int
)
go
–往学生信息表内插入测试数据
insert into stuInfo(stuNo, stuName, stuSex, stuAge,stuSeat,strAddress)
select ‘s25301’, ‘张秋丽’, ‘男’, 18,1, ‘北京海淀’ from dual union
select ‘s25303’, ‘李斯文’, ‘女’, 22,2, ‘河阳洛阳’ from dual union
select ‘s25302’, ‘李文才’, ‘男’, 85,3, ‘地址不详’ from dual union
select ‘s25304’, ‘欧阳俊雄’, ‘男’, 28,4, ‘新疆’ from dual union
select ‘s25318’, ‘梅超风’, ‘女’, 23,5, ‘地址不详’ from dual
go
–往学生成绩表内插入测试数据
insert into stuMarks(ExamNo, stuNo, writtenExam, LabExam)
select ‘s271811’, ‘s25303’, 93, 59 from dual union
select ‘s271813’, ‘s25302’, 63, 91 from dual union
select ‘s271816’, ‘s25301’, 90, 83 from dual union
select ‘s271817’, ‘s25318’, 63, 53 from dual
go
select * from stuInfo
select * from stuMarks
1,要求李斯文不能被删除
create or replace trigger ta --创建触发器名称
after delete --时间点 操作
on stuinfo --操作的表
for each row --行级触发
begin
if(:old.syuname=‘李斯文’) then
raise_application_error(-20002,‘李斯文是校长的儿子’)
end if;
end;
注:
old是临时表,和stuinfo中的数据一致
Oracle提供了1000个错误代码给我们-21000到-20000
删除李斯文的信息
delete stuinfo where stuname=‘李斯文’
执行删除会触发触发器然后报错
2,要求’打瞌睡’的不能被增加
create or replace trigger tb
after insert
on stuinfo
for each row
begin
if(:new.stuname=‘打瞌睡’) then
raise_application_error(-20003,‘睡觉的人不能增加’);
end if;
end;
增加打瞌睡的学生信息
insert into stuinfo values(‘s34345’,‘瞌睡’,‘女’,18,6,‘长沙’)
增加执行报错
3,要求李文才不能被修改
create or replace trigger tc
after update
on stuinfo
for each row
begin
if(:new.stuname=‘李文才’) then
raise_application_error(-20005,‘李文才不能被修改’);
end if;
end;
修改李文才的姓名为李无才
update stuinfo set stuname=‘李无才’ where stuname=‘李文才’
修改报错
4,三合一 insert update delete 要把前面的触发器删掉再运行
create or replace trigger td
after insert or update or delete
on stuinfo
for each row
begin
case
where inserting then
if(:new.stuname=‘李文才’) then
raise_application_error(-20005,‘李文才不能被修改’);
end if;
when updating then
if(:new.stuname=‘打瞌睡’) then
raise_application_error(-20003,‘睡觉的人不能增加’);
end if;
when deleting then
if(:new.stuname=‘李斯文’) then
raise_application_error(-20002,‘李斯文是校长的儿子’);
end if;
end case;
end;
5,联级触发
删除梅超风的时候将他的成绩一并删除
create or replace trigger ta
after delete
on stuinfo
for each row
文末
如果30岁以前,可以还不知道自己想去做什么的话,那30岁之后,真的觉得时间非常的宝贵,不能再浪费时间在一些碎片化的事情上,比如说看综艺,电视剧。一个人的黄金时间也就二,三十年,不能过得浑浑噩噩。所以花了基本上休息的时间,去不断的完善自己的知识体系,希望可以成为一个领域内的TOP。
同样是干到30岁,普通人写业务代码划水,榜样们深度学习拓宽视野晋升管理。
这也是为什么大家都说30岁是程序员的门槛,很多人迈不过去,其实各行各业都是这样都会有个坎,公司永远都缺的高级人才,只用这样才能在大风大浪过后,依然闪耀不被公司淘汰不被社会淘汰。
269页《前端大厂面试宝典》
包含了腾讯、字节跳动、小米、阿里、滴滴、美团、58、拼多多、360、新浪、搜狐等一线互联网公司面试被问到的题目,涵盖了初中级前端技术点。
前端面试题汇总
JavaScript
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
前端面试题汇总
JavaScript
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-0E4M4uNk-1713331206037)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!