select-MySQL中触发器的创建问题

问题描述

MySQL中触发器的创建问题

大概要完成的功能就是将这个表(temp)得到的内容分别插入到其它的表,然后将temp表的内容删掉
create trigger insert_trigger
after insert on noticetemp
for each row
begin
insert into notice(NoticeID,NoticeTitle,Editor,Date) select NoticeID,NoticeTitle,Editor,Date from noticetemp;
insert into noticeindex(ClassID,NoticeID) select Class,NoticeID from noticetemp;
insert into noticedetail(NoticeID,NoticeText) select NoticeID,NoticeText from noticetemp;
delete from noticetemp;
end;
结果如图,总是提示错误找不到原因,求大手们指教下子,麻烦了

解决方案

http://blog.sina.com.cn/s/blog_9707fac301016x0q.html

时间: 2024-09-16 22:19:48

select-MySQL中触发器的创建问题的相关文章

mysql中触发器的简单实例

 一个简单的例子 1.1. 创建表:    create table t(s1 integer); 1.2. 触发器:  代码如下 复制代码 ?delimiter | create trigger t_trigger before insert on t  for each row  begin set @x = "hello trigger";        set NEW.s1 = 55; end;  | 1.3. 如果触发器创建错误,可能只能删除了,至少我试过不能replace

MySQL中触发器的基础学习教程_Mysql

0.触发器的基本概念触发器是一种特殊的存储过程,它在插入,删除或修改特定表中的数据时触发执行,它比数据库本身标准的功能有更精细和更复杂的数据控制能力. 数据库触发器有以下的作用: (1).安全性.可以基于数据库的值使用户具有操作数据库的某种权利.   # 可以基于时间限制用户的操作,例如不允许下班后和节假日修改数据库数据.   # 可以基于数据库中的数据限制用户的操作,例如不允许股票的价格的升幅一次超过10%. (2).审计.可以跟踪用户对数据库的操作.     # 审计用户操作数据库的语句.

MySQL中触发器入门简单实例

创建触发器.创建触发器语法如下: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt 其中trigger_name标识触发器名称,用户自行指定: trigger_time标识触发时机,用before和after替换: trigger_event标识触发事件,用insert,update和delete替换: tbl_name标识建立触发器的表名,即在哪张表上建立触发

MySQL中触发器入门简单实例与介绍_Mysql

创建触发器.创建触发器语法如下: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt 其中trigger_name标识触发器名称,用户自行指定: trigger_time标识触发时机,用before和after替换: trigger_event标识触发事件,用insert,update和delete替换: tbl_name标识建立触发器的表名,即在哪张表上建立触发

MySQL 中怎么在创建表时,对字段进行限定输入

问题描述 创建一个table时,怎么对字段内容进行限定?如:性别只能输入"男"."女", 年龄在 1 到 3位整数之间.谢谢! 问题补充:谢谢,有具体例子.分给你吧,新来的,就这么点,别嫌少啊,呵呵.liveHappy 写道 解决方案 比如:create table user(uid int auto_increment primary key, - 用户IDuname varchar(20) not null unique, - 用户名upwd varchar(2

mysql之触发器trigger的使用例子

为什么要使用触发器   触发器的优点   1,触发器的"自动性" 对程序员来说,触发器是看不到的,但是他的确做事情了,如果不用触发器的话,你更新了user表的name字段时,你还要写代码去更新其他表里面的冗余字段,我举例子,只是一张表,如果是几张表都有冗余字段呢,你的代码是不是要写很多呢,看上去是不是很不爽呢. 2,触发器的数据完整性 触发器有回滚性,举个例子,我发现我很喜欢举子,就是你要更新五张表的数据,不会出现更新了二个张表,而另外三张表没有更新. 但是如果是用php代码去写的话,

cursor-mysql中存储过程无法创建成功

问题描述 mysql中存储过程无法创建成功 delimiter $$ BEGIN DECLARE iti varchar(25); declare maj varchar(25); declare cla tinyint(1); declare buffer tinyint(1); declare grd enum('2014级','2012级','2013级'); declare mycur CURSOR for select institude,major,grade,class from

MySQL的触发器写法

mysql教程的触发器写法*/ trigger_name:触发器的名字,我常用的命名规则t_name_tablename_(b|a)(i|u|d),t:触发器标识,name:英文名,tablename:表名,b(before):标识是触发事件之前,a(after):标识触发事件之后,i(insert):标识insert事件,u(update):标识update事件,d(delete):标识delete事件; trigger_time:触发时间(before或after) trigger_even

MySQL、SQL Server 和 Oracle 触发器的创建

场景:当 users 表在 insert,update,delete 时,在 users_log 表中记录变更的 id MySQL触发器的创建 触发时机:BEFORE,AFTER 触发事件:INSERT,UPDATE,DELETE NEW 和 OLD 关键字: | action | NEW | OLD | |--------|----------------|----------------| | insert | 插入的新数据 | 无 | | update | 修改为的新数据 | 被修改的原数