Oracle11g oracle数据库19c-将[rolename]授予[user]错误ORA-01917:用户或角色不存在

Oracle11g oracle数据库19c-将[rolename]授予[user]错误ORA-01917:用户或角色不存在,oracle11g,oracle-sqldeveloper,oracle19c,Oracle11g,Oracle Sqldeveloper,Oracle19c,我使用此脚本为oracle数据库19c创建用户和角色,并得到错误ORA-01917 CREATE ROLE C##readonlyrole; CREATE USER "C##lysjr_ro" IDENTIFIED BY "XXXXXXXPASWORD" DEFAULT TABLESPACE "XXX_TABLE_SPACE" TEMPORARY TABLESPACE "XXX_TABLE_SPACE_TEMP"; GRANT CREATE SESSION to C##readonly

我使用此脚本为oracle数据库19c创建用户和角色,并得到错误ORA-01917


CREATE ROLE C##readonlyrole;

CREATE USER "C##lysjr_ro" IDENTIFIED BY "XXXXXXXPASWORD"  
DEFAULT TABLESPACE "XXX_TABLE_SPACE"
TEMPORARY TABLESPACE "XXX_TABLE_SPACE_TEMP";

GRANT CREATE SESSION to C##readonlyrole;

BEGIN
  FOR x IN (SELECT * FROM dba_tables WHERE owner='C##lysjr_ro')
  LOOP
    EXECUTE IMMEDIATE 'GRANT SELECT ON schema_name.' || x.table_name || 
                                  ' TO C##readonlyrole';
  END LOOP;
END;

GRANT C##readonlyrole TO C##lysjr_ro;

但是

显示带有结果的错误报告:

GRANT C##readonlyrole TO C##lysjr_ro
Error report -
ORA-01917: user or role 'C##lysjr_ro' does not exist
01917. 00000 -  "user or role '%s' does not exist"
*Cause:    There is not a user or role by that name.
*Action:   Re-specify the name.

现在我该怎么办?

请尝试在“创建用户”命令中不使用引号:

CREATE USER C##lysjr_ro IDENTIFIED BY XXXXXXXPASWORD  
DEFAULT TABLESPACE XXX_TABLE_SPACE
TEMPORARY TABLESPACE XXX_TABLE_SPACE_TEMP;
CREATE USER C##lysjr_ro IDENTIFIED BY XXXXXXXPASWORD  
DEFAULT TABLESPACE XXX_TABLE_SPACE
TEMPORARY TABLESPACE XXX_TABLE_SPACE_TEMP;