SQL工作笔记-达梦存储过程及时间触发器实现自动生成数据

存储过程和MySQL几乎是一模一样,

如下,使用调用存储过程,为某表插入数据:

CREATE OR REPLACE PROCEDURE "大写英文模式名"."大写英文存储过程"
AUTHID DEFINER

AS
	/*变量说明部分*/
	VARNAME INT;
BEGIN
	/*执行体*/
	insert into 大写英文模式名.大写英文表名(CREATE_TIME,XXXX_ID, ID, XXXX_TYPE, XXX, XXX, XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX, XXX, XXX, XXX,  XXX, XXX, XXX, XXX ) values( CURDATE(), XXXXXX, XXXXXXXXX, XXXXXXXXX, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400, rand() * 400);

END;

这里提一下:CURDATE()可以获取当前时间日期类型给TIMESTAMP赋值。

 

下面是时间触发器,这个东西的确是神奇。

在MySQL中这个称之为事件。

下面来看看达梦里面时间触发器:

create or replace TRIGGER 大写英文触发器名
after timer on database
for each 1 day for each 60 minute
begin
	call 大写英文存储过程;
end;

这里时间触发器作用于database上,并且每一天,每60分钟,执行一次。

执行的内容为调用存储过程。

你可能感兴趣的:(SQL,工作笔记)