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

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

举报
开通vip

黑马程序员:Java面试题之数据库存储过程与触发器 这个问题非常考验个人能力水平和自我积累!这样的问题拿高薪必看哦! 1.create procedure insert_Student (_name varchar(50),_age int ,out _id int) 2. 3.begin 4. 5.insert into student value(null,_name,_age); 6. 7.select max(stuId) into _id from student; 8. 9.end; 10. 11.call insert_Stud...

黑马程序员:Java面试题之数据库存储过程与触发器
这个问题非常考验个人能力水平和自我积累!这样的问题拿高薪必看哦! 1.create procedure insert_Student (_name varchar(50),_age int ,out _id int) 2. 3.begin 4. 5.insert into student value(null,_name,_age); 6. 7.select max(stuId) into _id from student; 8. 9.end; 10. 11.call insert_Student('wfz',23,@id); 12. 13.select @id; 14. 15.mysql> create trigger update_Student BEFORE update on student FOR EACH ROW 16. 17.-> select * from student; 触发器不允许返回结果 1.create trigger update_Student BEFORE update on student FOR EACH ROW 2. 3.insert into student value(null,'zxx',28); mysql的触发器目前不能对当前表进行操作 1.create trigger update_Student BEFORE update on student FOR EACH ROW 2. 3.delete from articles where id=8; 这个例子不是很好,最好是用删除一个用户时,顺带删除该用户的所有帖子 这里要注意使用OLD.id 触发器用处还是很多的,比如校内网、开心网、Facebook,你发一个日志,自动通知好友,其实就是在增加日志时做一个后触发,再向通知表中写入条目。因为触发器效率高。而UCH没有用触发器,效率和数据处理能力都很低。 存储过程的实验步骤: 1.mysql> delimiter | 2. 3.mysql> create procedure insertArticle_Procedure (pTitle varchar(50),pBid int,out 4. 5.pId int) 6. 7.-> begin 8. 9.-> insert into article1 value(null,pTitle,pBid); 10. 11.-> select max(id) into pId from article1; 12. 13.-> end; 14. 15.-> | 16. 17.Query OK, 0 rows affected (0.05 sec) 18. 19.mysql> call insertArticle_Procedure('传智播客',1,@pid); 20. 21.-> | 22. 23.Query OK, 0 rows affected (0.00 sec) 24. 25.mysql> delimiter ; 26. 27.mysql> select @pid; +------+ | @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.create table board1(id int primary key auto_increment,name varchar(50),ar 2. 3.ticleCount int); 4. 5.create table article1(id int primary key auto_increment,title varchar(50) 6. 7.,bid int references board1(id)); 8. 9.delimiter | 10. 11.create trigger insertArticle_Trigger after insert on article1 for each ro 12. 13.w begin 14. 15.-> update board1 set articleCount=articleCount+1 where id= NEW.bid; 16. 17.-> end; 18. 19.-> | 20. 21.delimiter ; 22. 23.insert into board1 value (null,'test',0); 24. 25.insert into article1 value(null,'test',1); 还有,每插入一个帖子,都希望将版面表中的最后发帖时间,帖子总数字段进行同步更 能需要用declare方式声明一个变量,或者是用NEW.posttime来生成。
本文档为【黑马程序员:Java面试题之数据库存储过程与触发器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_562397
暂无简介~
格式:doc
大小:33KB
软件:Word
页数:8
分类:互联网
上传时间:2019-06-04
浏览量:41