Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 由于权限不足,无法迁移Oracle数据库(最初创建表)?_C#_Oracle_Entity Framework Core_Database Migration_Entity Framework Migrations - Fatal编程技术网

C# 由于权限不足,无法迁移Oracle数据库(最初创建表)?

C# 由于权限不足,无法迁移Oracle数据库(最初创建表)?,c#,oracle,entity-framework-core,database-migration,entity-framework-migrations,C#,Oracle,Entity Framework Core,Database Migration,Entity Framework Migrations,我是Oracle DB的新手,不知道应该为用户设置什么样的权限,以便他可以执行创建、删除、删除、插入、更新和选择表等基本命令 实际上,我已经为我的用户帐户设置了所有这些权限。 但在运行migrate时失败,控制台窗口中显示以下错误: 2019-05-27 08:29:07.837809线程ID:1(错误)OracleRelationalCommand.Execute():Oracle.ManagedDataAccess.Client.OracleException(0x80004005):ORA

我是Oracle DB的新手,不知道应该为用户设置什么样的权限,以便他可以执行创建、删除、删除、插入、更新和选择表等基本命令

实际上,我已经为我的用户帐户设置了所有这些权限。 但在运行migrate时失败,控制台窗口中显示以下错误:

2019-05-27 08:29:07.837809线程ID:1(错误)OracleRelationalCommand.Execute():Oracle.ManagedDataAccess.Client.OracleException(0x80004005):ORA-01031:权限不足 ORA-06512:在第2行 在OracleInternal.ServiceObjects.OracleConnectionImpl.VerifyExecution(Int32&cursorId、Boolean bThrowArrayBindRelatedErrors、SqlStatementType、SqlStatementType、Int32 arrayBindCount、OracleException&Exception for ArrayBindML、Boolean&hasMoreRowsInDB、Boolean BfirstitionDone) 在OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteNonQuery(字符串commandText、OracleParameterCollection paramColl、CommandType CommandType、OracleConnectionImpl connectionImpl、Int32 longFetchSize、Int64 clientInitialLOBFS、OracleDependencyImpl或LdependencyImpl、Int64[]&scnFromExecution、OracleParameterCollection&bindByPositionParamColl、Boolean&bBindParamPresent、OracleException&Exception for ArrayBindML、OracleConnection连接、OracleLogicalTransaction&OracleLogicalTransaction、Boolean isFromEF) 位于Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteNonQuery()处 在Oracle.EntityFrameworkCore.Storage.Internal.OracleRelationalCommandBuilderFactory.OracleRelationalCommandBuilder.OracleRelationalCommand.Execute(IRelationalConnection连接、DbCommandMethod执行方法、iRelationalDictionary
2参数值)
执行DbCommand失败(292ms)[参数=[],命令类型='Text',命令超时='0']
开始
执行“立即”创建表
“客户”(
默认情况下在NULL上生成的“Id”号(10)作为标识不为NULL,
...
)';
结束;
2019-05-27 08:29:07.842817线程ID:1(错误)OracleRelationalCommand.Execute():Oracle.ManagedDataAccess.Client.OracleException(0x80004005):ORA-01031:权限不足
ORA-06512:在第2行
在OracleInternal.ServiceObjects.OracleConnectionImpl.VerifyExecution(Int32&cursorId、Boolean bThrowArrayBindRelatedErrors、SqlStatementType、SqlStatementType、Int32 arrayBindCount、OracleException&Exception for ArrayBindML、Boolean&hasMoreRowsInDB、Boolean BfirstitionDone)
在OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteNonQuery(字符串commandText、OracleParameterCollection paramColl、CommandType CommandType、OracleConnectionImpl connectionImpl、Int32 longFetchSize、Int64 clientInitialLOBFS、OracleDependencyImpl或LdependencyImpl、Int64[]&scnFromExecution、OracleParameterCollection&bindByPositionParamColl、Boolean&bBindParamPresent、OracleException&Exception for ArrayBindML、OracleConnection连接、OracleLogicalTransaction&OracleLogicalTransaction、Boolean isFromEF)
位于Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteNonQuery()处
在Oracle.EntityFrameworkCore.Storage.Internal.OracleRelationalCommandBuilderFactory.OracleRelationalCommandBuilder.OracleRelationalCommand.Execute(IRelationalConnection连接、DbCommandMethod执行方法、iRelationalDictionary
2个参数值) Oracle.ManagedDataAccess.Client.OracleException(0x80004005):ORA-01031:权限不足 ORA-06512:在第2行 在OracleInternal.ServiceObjects.OracleConnectionImpl.VerifyExecution(Int32&cursorId、Boolean bThrowArrayBindRelatedErrors、SqlStatementType、SqlStatementType、Int32 arrayBindCount、OracleException&Exception for ArrayBindML、Boolean&hasMoreRowsInDB、Boolean BfirstitionDone) 在OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteNonQuery(字符串commandText、OracleParameterCollection paramColl、CommandType CommandType、OracleConnectionImpl connectionImpl、Int32 longFetchSize、Int64 clientInitialLOBFS、OracleDependencyImpl或LdependencyImpl、Int64[]&scnFromExecution、OracleParameterCollection&bindByPositionParamColl、Boolean&bBindParamPresent、OracleException&Exception for ArrayBindML、OracleConnection连接、OracleLogicalTransaction&OracleLogicalTransaction、Boolean isFromEF) 位于Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteNonQuery()处 在Oracle.EntityFrameworkCore.Storage.Internal.OracleRelationalCommandBuilderFactory.OracleRelationalCommandBuilder.OracleRelationalCommand.Execute(IRelationalConnection连接、DbCommandMethod执行方法、iRelationalDictionary
2参数值)
位于Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteOnQuery(IRelationalConnection连接、iRelationalDictionary
2个参数值) 位于Microsoft.EntityFrameworkCore.Migrations.Internal.MigrationCommandExecutor.ExecutionQuery(IEnumerable`1 migrationCommands,IRelationalConnection) 位于Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(字符串targetMigration) 位于Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.UpdateDatabase(String targetMigration,String contextType) 位于Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(操作) ORA-01031:权限不足 ORA-06512:在第2行

因此,这里涉及的sql命令似乎是
beginexecuteimmediate…
。我不太确定应该设置什么样的特权才能成功执行。你能看一下上面的错误信息,给我一些建议来正确设置我的用户帐户的权限吗? 谢谢

PS:显示我设置的所有权限的屏幕截图:



看起来只有当要创建的表不包含任何自动递增的主键时,
创建表
权限才有效

它真的很有趣