当前位置:首页 >> 计算机软件及应用 >>

黑马程序员:Java面试题之数据库存储过程与触发器


这个问题非常考验个人能力水平和自我积累!这样的问题拿高薪必看哦!

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.

create procedure insert_Student (_name varchar(50),_age int ,out _id int)

begin

insert into student value(null,_name,_age);

select max(stuId) into _id from student;

end;

call insert_Student('wfz',23,@id);

select @id;

mysql> create trigger update_Student BEFORE update on student FOR EACH

ROW

16. 17.
复制代码 -> select * from student;

触发器不允许返回结果

1. 2. 3.

create trigger update_Student BEFORE update on student FOR EACH ROW

insert into student value(null,'zxx',28);

复制代码

mysql 的触发器目前不能对当前表进行操作

1. 2. 3.

create trigger update_Student BEFORE update on student FOR EACH ROW

delete from articles where id=8;

复制代码

这个例子不是很好,最好是用删除一个用户时,顺带删除该用户的所有帖子 这里要注意使用 OLD.id 触发器用处还是很多的,比如校内网、开心网、Facebook,你发一个日志,自动通知 好友,其实就是在增加日志时做一个后触发,再向通知表中写入条目。因为触发器效率高。 而 UCH 没有用触发器,效率和数据处理能力都很低。 存储过程的实验步骤:

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.

mysql> delimiter |

mysql>

create

procedure

insertArticle_Procedure

(pTitle

varchar(50),pBid int,out

pId int)

-> begin

-> insert into article1 value(null,pTitle,pBid);

-> select max(id) into pId from article1;

-> end;

-> |

16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
复制代码 mysql> select @pid; mysql> delimiter ; Query OK, 0 rows affected (0.00 sec) -> | mysql> call insertArticle_Procedure('传智播客',1,@pid); Query OK, 0 rows affected (0.05 sec)

+------+ | @pid | +------+ |3| +------+ 1 row in set (0.00 sec) mysql> select * from article1; +----+--------------+------+ | id | title | bid | +----+--------------+------+ | 1 | test | 1 | | 2 | chuanzhiboke | 1 | | 3 | 传智播客 | 1 |

+----+--------------+------+ 3 rows in set (0.00 sec) 触发器的实验步骤:

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.

create table board1(id int primary key auto_increment,name varchar(50),ar

ticleCount int);

create varchar(50)

table

article1(id

int

primary

key

auto_increment,title

,bid int references board1(id));

delimiter |

create trigger insertArticle_Trigger after insert on article1 for each

ro

12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
复制代码 insert into article1 value(null,'test',1); insert into board1 value (null,'test',0); delimiter ; -> | -> end; -> update board1 set articleCount=articleCount+1 where id= NEW.bid; w begin

还有,每插入一个帖子,都希望将版面表中的最后发帖时间,帖子总数字段进行同步更

新,用触发器做效率就很高。下次课设计这样一个案例,写触发器时,对于最后发帖时间可 能需要用 declare 方式声明一个变量,或者是用 NEW.posttime 来生成。


相关文章:
黑马程序员:Java面试题之数据库存储过程与触发器.doc
黑马程序员:Java面试题之数据库存储过程与触发器 - 这个问题非常考验个人能力
黑马程序员:Java面试题之JDBC如何调用存储过程.doc
黑马程序员:Java面试题之JDBC如何调用存储过程 - JDBC 如何调用存储过程 [ 啥也不说,直接上代码了! 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12...
黑马程序员:Java面试题之数据库优化方面的经验.doc
黑马程序员:Java面试题之数据库优化方面的经验 - 目前部分开发人员面对一个很
黑马程序员:Java面试题之SqlServer数据库的备份和恢复.doc
黑马程序员:Java面试题之SqlServer数据库的备份和恢复 - 一、备份数据库 1、打开 SQL 企业管理器,在控制台根目录中依次点开 Microsoft SQL Server 2、S...
黑马程序员:Java面试题之ORM和 JDBC 的不同.doc
黑马程序员:Java面试题之ORM JDBC 的不同 - orm 是一种思想,就是把 object 转变成数据库中的记录,或者把数据库中的记录 转变成 objecdt,我们可以用 jdbc ...
黑马程序员:Java面试题之SQL语句查询.doc
黑马程序员:Java面试题之SQL语句查询 - 面试题要求如下: 用一条 SQL
黑马程序员:Java面试题之JavaWeb技术应用.doc
黑马程序员:Java面试题之JavaWeb技术应用 - 一、JavaWeb 的两
黑马程序员:Java面试题之BS与CS的联系与区别.doc
黑马程序员:Java面试题之BS与CS的联系与区别 - C/S 是 Client/Server 的缩写。服务器通常采用高性能的 PC、工作站或小型机,并 采用大型数据库系统,如 Oracle...
黑马程序员:Java面试题之Request对象的主要方法.doc
黑马程序员:Java面试题之Request对象的主要方法 - 这个问题面试时遇见
黑马程序员:Java面试题Tomcat的优化经验.doc
黑马程序员:Java面试题Tomcat的优化经验 - Tomcat 作为 Web
黑马程序员:Java面试题之分页语句.doc
黑马程序员:Java面试题之分页语句 - 取出 sql 表中第 31 到 40
SQL Server存储过程与触发器课堂练习及答案.doc
存储过程与触发器课堂练习及答案 1. 创建一个存储过程,显示所有价格在 15 美
存储过程与触发器(超详细).doc
熟悉触发器的管理 8.1 认识存储过程 Transact-SQL 语句是应用程序与 SQL Server 数据库之间的主要编程接口,大量的时间将 花费在 Transact-SQL 语句和应用程序代码...
实验八 存储过程与触发器的应用 实验报告.doc
实验八 存储过程与触发器的应用 实验报告_工学_高等教育_教育专区。数据库系统概
第九章 存储过程与触发器.ppt
第9 章 存储过程与触发器 ?主要内容 介绍了数据库中两个重要的可编程对象存储过程和触发器,并结合实例讲 解了在SQL Server中如何创建、修改和管理存储过程和触发...
存储过程和触发器(数据库实验5).doc
数据库基础与实践实验报告 实验五 存储过程和触发器 班级:惠普测试 142 学号
数据库原理课程设计实验【 创建存储过程与触发器】_图文.doc
数据库原理课程设计实验【 创建存储过程与触发器】_工学_高等教育_教育专区。...触发器概念:触发器(trigger)是 SQL server 提供给程序员和数据分析员来保证数据...
java黑马面试简答题.txt
(1) 自我介绍 (2) 几道编程题 (3) Java 基础...可以具有不同黑马程序员入学面试复习的数据类型或表现...存储的对象具备比较性,有两种方法:自然排序、比较器...
JAVA面试题大全(含答案).doc
开发人员能够用标准 Java API 编 写数据库应用程序...动态 SQL 语句及带 IN 和 OUT 参数的存储 过程。...另外触发器也 可以做完整性的保护,但触发器大量用于...
java和sql和oracle面试题汇总--__--.doc
笔试题,数据库题目,java题目,java数据库面试题...解释:触发器是一种特殊类型的存储过程,出发器主要...解释:sql 注入,就是利用程序员对用户输入数据的合法...
更多相关标签: