易截截图软件、单文件、免安装、纯绿色、仅160KB

mysql中触发器中赋值的问题

DELIMITER $$;

DROP TRIGGER `test`.`ttt`$$
create trigger `ttt` BEFORE INSERT on `test`
for each row BEGIN
  #set @daytemp:=DAYOFWEEK(NEW.timestampNow);
  select DAYOFWEEK(NEW.timestampNow) into @daytemp from test where id=new.id;
  if @daytemp <7 then   
    set NEW.canshow=1;
  end if;
END;
$$
DELIMITER ;$$
=========================================
 
使用mysql的触发器,原定就是有一个字段是timestamp类型,默认是Current_timestamp。

在触发器中判断,如果新纪录的日期是周一到周五, set new.canshow=1;

但是现在的问题是,用
set @daytemp:=DAYOFWEEK(NEW.timestampNow); 或是
select DAYOFWEEK(NEW.timestampNow) into @daytemp from test where id=new.id;
都取不到DAYOFWEEK(NEW.timestampNow)的值。

但是在query 中单独执行 select DAYOFWEEK(NEW.timestampNow) from test;是可以的。

请教各位如何解决,谢谢。







直接取NOW中的星期不行?BEFORE中,字段还没有值

谢谢上面的两位,解决了。


相关问答:

mysql的连接超时时间怎么设置 - VC/MFC / 数据库

我是用mysql自带的C API
if(mysql_real_connect(&mysql,"125.0.0.108","root","root","home",3306,NULL,0))

AfxMessageBox("数据库连接失败") ......

mysql中文乱码 - C/C++ / C++ 语言

mysql数据库的编码格式是utf8
在c++程序中使用C API直接连接mysql数据库,把中文保存到mysql数据库中,中午变成乱码
使用mysql的load命令导入文本文件,无论文本文件是ANSI还是utf8编码,都是乱码
请问上面两个问 ......

MySql 怎么在数据库安装的时候就自动生成默认用户呢?

本人想知道MySql怎么在数据安装的时候就能自动去生成一些默认的用户和权限呢(用户:Client,密码:12345)?
比如是不是需要写自动安装脚本阿?等等,谢谢!
MySQL的标准安装,或者非安装版本中不会帮你创建这些 ......

如何使用MySQL - MS-SQL Server / 基础类

刚刚接触MySQL,不知道该如何去查看数据,插入数据,创建数据库、表,用哪为前辈能指教一二?

MySQL 5.1参考手册

引用
兄弟你会结贴吗?
mysql 参考手册

baidu

MySQL官方文档 http://dev.mysql.com/doc ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号