gpt4 book ai didi

mysql - 在数据库上执行SQL触发器以限制删除/更改/创建语法错误,尽管按照以下教程进行操作,但ON在此位置无效吗?

转载 作者:行者123 更新时间:2023-12-03 08:24:25 26 4
gpt4 key购买 nike

我正在研究数据库的安全DDL触发器,并希望限制非管理员创建/删除数据库,所以我创建了此触发器并将其置于数据库脚本中所有其他代码(创建表等)的下方。

CREATE TRIGGER alert_table

ON DATABASE

FOR CREATE_TABLE, DROP_TABLE, ALTER_TABLE

AS

BEGIN

IF IS_MEMBER ('admin') = 0

BEGIN

PRINT 'Please contact your Database Admin'

ROLLBACK TRANSACTION;

END

END

GO

CREATE
注意:
USER'admin'@'localhost'
它说:“在该位置打开无效,期望:之前或之后”,“结束”类似。谢谢!

最佳答案

在使用mysql时,您遵循了Microsoft SQL Server(通常缩写为mssql服务器)的教程。
Mssql服务器具有DDL triggers,该语法遵循您问题中的语法。
Mysql的create trigger语法有所不同,并且根本没有DDL触发器,因此您不能使用触发器来处理表创建事件。

关于mysql - 在数据库上执行SQL触发器以限制删除/更改/创建语法错误,尽管按照以下教程进行操作,但ON在此位置无效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65226624/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com