Updated on 2025-06-07 GMT+08:00

U0400005: GaussDB does not support a specified definer during object creation

Description

Database Type and Version

  • Source database type and version: MySQL 5.5, 5.6, 5.7, and 8.0
  • Target database type and version: all GaussDB versions

Syntax Example

This error is reported because UGO does not convert a definer by default.

GaussDB does not support specifying a definer using the DEFINER clause during object creation, for example:

CREATE OR REPLACE DEFINER = my_user@10.10.10.10 VIEW view_demo AS
SELECT * FROM emp_t WHERE deptno = 10;

Suggestion

Modify Support for definer. Comment out the definer only or comment out the definer and add ALTER OWNER for the object.

An object's definer also affects the privilege context of the SECURITY DEFINER statement. Changing an object's owner will not change its definer. By default, the user who creates an object in a GaussDB database is the object's definer, that is, the original owner. You need to fully evaluate the impact of the definer. For details, see GaussDB Developer Guide.