当前位置:首页 » 存储配置 » mysql触发器存储过程

mysql触发器存储过程

发布时间: 2022-03-30 15:02:00

‘壹’ mysql 触发器 或存储过程

这个问题的描述太简单了,意思不太明白啊。。a表插入后,b,c表有什么改变啊?a表插入对b,c表没有影响吗??

‘贰’ Mysql触发器或存储过程中能否调用dll

使用非SQL格式dll,也就是平时所写的,如果打死也不明白就用他就可以。
dll需要事先先注册,
注册是:regsvr32 名字.dll
卸载是:regsvr32 /u 名字.dll

[vb] view plain
CREATE TRIGGER [名称] ON [表名]
AFTER INSERT, UPDATE, DELETE
AS
DECLARE @hr int
DECLARE @obj int
DECLARE @out varchar(200)
exec @hr = sp_oacreate '[名称空间|工程名].[类名]', @obj out
IF @hr = 0
BEGIN
exec @hr = sp_oamethod @obj,'[函数名]',@out output,'[参数1]','[参数2]',...'[参数N]'
if @hr = 0
BEGIN
print @out
END
END

使用SQL格式的DLL
以下这代码要放到master数据库执行

[c-sharp] view plain
CREATE PORC [名字] AS
BEGIN
DECLARE @out varchar(200)
EXEC exec sp_addextendedproc '[函数名]', '[名称空间|工程名
.dll' --添加dll进来
EXEC @out = [函数名] [参数1] [参数2] ... [参数N] --注意:函数名前不能用@函数名和参数之间,参数和参数之间,不能用,,我用过,报错了...
EXEC exec sp_sp_dropextendedproc'[函数名]' --这里就是卸载了

直接执行外部程序,例如exe,黑客爱好这代码
上面的代码黑客也爱好,为什么?我才不会告诉你他喜欢用sp_addextendproc来加载xp_cmdshell

[c-sharp] view plain
--以下代码不是顺序执行,只是说明
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE; -- 开启xp_cmdshell,几乎不需要执行,多数人不会主要到
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 0;RECONFIGURE; -- 这自然是关闭喽,要做啥非法事的话,就不要执行这句。
EXEC sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll'declare @o int --这句是如果不能执行xp_cmdshell时候,例如报127错误时修复使用
sp_addextendedproc 'xp_cmdshell','xpsql70.dll' -- 同上
--以下是使用xp_comshell
--有返回值
DECLARE @out int
EXEC @out = xp_cmdshell '[文件名]' '[参数1]' '[参数2]' ... '[参数N]'
无返回值
EXEC xp_comshenll'[文件名]' '[参数1]' '[参数2]' ... '[参数N]',no_output

‘叁’ 如何用mysql触发器调用存储过程

这个性能问题很多都是相对的,譬如如果你不用存储过程,那应用服务器和数据库服务器的交互就会增多,这样也导致性能降低。一般而言,存储过程的使用降低应用的负载,更多的要考虑使用的合理性。譬如触发器过多也会影响你操作表的速度,因而你应该根据系统自身情况去分析设计

‘肆’ 如何测试mysql触发器和存储过程

1.
为了测试触发器和存储过程,首先建立一张简单的表:
复制代码
代码如下:
CREATE
TABLE
`airuser`
(
`userId`
int(11)
NOT
NULL
AUTO_INCREMENT,
`username`
varchar(128)
NOT
NULL,
PRIMARY
KEY
(`userId`)
)ENGINE=InnoDB
DEFAULT
CHARSET=utf8
2.
为该表的插入操作,创建一张记录表:
复制代码
代码如下:
CREATE
TABLE
`airuser_record`
(
`id`
int(11)
NOT
NULL
AUTO_INCREMENT,
`username`
varchar(45)
DEFAULT
NULL,
`edittime`
timestamp
NULL
DEFAULT
NULL,
`edittype`
varchar(45)
DEFAULT
NULL,
PRIMARY
KEY
(`id`)
)
ENGINE=InnoDB
DEFAULT
CHARSET=utf8
3.
编写一个插入操作的触发器:
复制代码
代码如下:
DROP
TRIGGER
insert_trigger;
delimiter
|
CREATE
TRIGGER
insert_trigger
BEFORE
INSERT
ON
airuser
FOR
EACH
ROW
BEGIN
INSERT
INTO
airuser_record
SET
username
=
NEW.username,
edittime=now(),
edittype='insert';
END;
SHOW
TRIGGERS;
4.
为批量插入编写存储过程:
复制代码
代码如下:
DROP
procere
createUsers;
delimiter
|
create
procere
createUsers(IN
count
int)
begin
declare
i
int;
set
i=0;
while
i<count
do
insert
into
airuser
set
username=concat('user_',i);
set
i=i+1;
end
while;
end;
show
procere
status;
5.
调用存储过程,验证存储过程是工作的,并验证在插入记录前,触发器能正确被触发:
复制代码
代码如下:
call
createUsers(10);
6.
最后通过插入记录表再次验证:
复制代码
代码如下:
SELECT
*
FROM
mars_jpa.airuser_record;

‘伍’ mysql!触发器里如何调用存储过程。

call showChildLst(new.pn,new.pa)

‘陆’ 求大神 mysql 中利用触发器调用存储过程 不能执行动态Sql

如果你用存储过程的代码替换掉呢。

‘柒’ 如何加密MYSQL触发器和存储过程

1 人员管理好。
2 改换成就写在应用里面

‘捌’ Mysql 触发器 和 存储过程

我就给你描述一下简单易懂的吧,第一个存储过程,例子:输入一个 名字,返回改名字的人的 居住地址!代码:create procere 过程名字( name varcha2) is
v varchar2(100);
begin
select s_address into v from 表 where s_name= name;
dbms_output.put_line('该名字居住的地址是:|| v');
end; 这个存储过程的。比较简单。的例子。
触发器,指的是:可以限制你往表里添加数据,比如,我建立触发器,比如不让你在当天的12:00:00之,对你的这个表进行操作。具体代码:
create or replace trigger 触发器名字
before update or insert or delete
on 你的表
declare v_date date;
begin
select sysdate into v_date from al;
if(v_date<to_date('2012-11-16 12:00:00','yyyy-mm-dd hh24:mi:ss'))
then dbms_output.put_line('这个时间不可以更改数据');
end if;
end;
我都亲自测试的。呵呵 ,这样如果你在12之前对表进行,曾删改,就会报出‘这个时间不可以改数据的’字样。我的例子通熟易懂,希望给点分。呵呵,不会的咱俩可以研究。

‘玖’ mysql5,触发器里可以调用存储过程吗

不能吧
create trigger del_stu_for_del_tb_pergi
before delete on tb_perdorm
for each row
begin
declare stucodn varchar(15);
set stucodn = old.stu_codename;
call in_out_Per(1,stucodn,'getout');
end $$
Dynamic SQL is not allowed in stored function or trigger
动态SQL是不允许在触发器中
貌似是这样 英语比较搓!!!

热点内容
如何在手机版给服务器加光影 发布:2025-02-01 09:02:14 浏览:727
简单神器安卓系统的哪个好 发布:2025-02-01 09:00:48 浏览:354
社保卡密码如何异地改密码 发布:2025-02-01 08:57:22 浏览:33
什么安卓平板最好能开120帧 发布:2025-02-01 08:55:58 浏览:380
安卓怎么冻结苹果id账号 发布:2025-02-01 08:45:16 浏览:639
pythonforosx 发布:2025-02-01 08:43:50 浏览:763
ftp建站工具 发布:2025-02-01 08:42:07 浏览:532
linux开启ntp 发布:2025-02-01 08:31:42 浏览:284
excel密码加密 发布:2025-02-01 08:17:01 浏览:539
陌陌在手机哪个文件夹 发布:2025-02-01 08:13:49 浏览:317