在 PostgreSQL 中,修改触发器,你使用改变触发器陈述。该语句是 SQL 标准的 PostgreSQL 扩展。的语法改变触发器声明如下:
用法:
ALTER TRIGGER trigger_name ON table_name
RENAME TO new_name;
让我们分析以上语法:
- 首先,指定与要更改的特定表关联的触发器的名称。
- 其次,将新的触发器名称放入重命名为条款。
例:
第一的,我们使用以下语句创建一个员工表进行演示:
CREATE TABLE staff( user_id serial PRIMARY KEY, username VARCHAR (50) UNIQUE NOT NULL, password VARCHAR (50) NOT NULL, email VARCHAR (355) UNIQUE NOT NULL, created_on TIMESTAMP NOT NULL, last_login TIMESTAMP );
其次,创建一个验证员工用户名的函数。工作人员的用户名不能为空,长度至少为8。
CREATE FUNCTION check_staff_user() RETURNS TRIGGER AS $$ BEGIN IF length(NEW.username) < 8 OR NEW.username IS NULL THEN RAISE EXCEPTION 'The username cannot be less than 8 characters'; END IF; IF NEW.NAME IS NULL THEN RAISE EXCEPTION 'Username cannot be NULL'; END IF; RETURN NEW; END; $$ LANGUAGE plpgsql;
第三,在人员表上创建一个新触发器来检查人员的用户名。每当您在职员表。
CREATE TRIGGER username_check BEFORE INSERT OR UPDATE ON staff FOR EACH ROW EXECUTE PROCEDURE check_staff_user();
现在修改above-created触发器使用以下语句:
ALTER TRIGGER username_check ON staff RENAME TO check_username;
输出:
相关用法
- PostgreSQL ALTER DATABASE用法及代码示例
- PostgreSQL ALTER TABLE用法及代码示例
- PostgreSQL ALTER SCHEMA用法及代码示例
- PostgreSQL ALTER ROLE用法及代码示例
- PostgreSQL ALTER TABLESPACE用法及代码示例
- PostgreSQL CREATE TRIGGER用法及代码示例
- PostgreSQL DROP TRIGGER用法及代码示例
- PostgreSQL NOT IN用法及代码示例
- PostgreSQL IN用法及代码示例
注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 PostgreSQL – ALTER TRIGGER。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。