Devart.Data.Oracle.EFCore v11.1.100.10 broken: ORA-01036: illegal variable name/number
Trivial insert causes ORA-01036: illegal variable name/number.
Database used: Oracle 19c.
Repro:
Clean dotnet 10 project.
Install just Devart.Data.Oracle.EFCore v11.1.100.10, no other package.
Configure DbSet for
- public class Example
- {
- public int Id {get; set;}
- }
Perform SaveChanges
var opts = new DbContextOptionsBuilder<AppDbContext>();
opts.UseOracle(
"DATA SOURCE=tcps://...; USER ID=...; Password=....; Direct=true; Min Pool Size=3; License key=...;");
opts.LogTo(Console.WriteLine, LogLevel.Information);
using var ctx = new AppDbContext(opts.Options);
ctx.Examples.Add(new Example());
ctx.SaveChanges();
Logs contain:
5/27/2026 16:44:43.582 RelationalEventId.CommandError[20102] (Microsoft.EntityFrameworkCore.Database.Command)
Failed executing DbCommand (81ms) [Parameters=[p__outParameter='?' (Direction = Output) (DbType = Object)], CommandType='Text', CommandTimeout='0']
DECLARE
updatedRowid ROWID;
BEGIN
INSERT INTO EXAMPLES
DEFAULT VALUES
RETURNING ROWID INTO updatedRowid;
OPEN :outParameter FOR SELECT ID FROM DATA_CORRECTION_TASK_2 WHERE ROWID = updatedRowid;
END;
fail: 5/27/2026 16:44:43.834 CoreEventId.SaveChangesFailed[10000] (Microsoft.EntityFrameworkCore.Update)
An exception occurred in the database while saving changes for context type 'ConsoleApp1.AppDbContext'.
Microsoft.EntityFrameworkCore.DbUpdateException: An error occurred while saving the entity changes. See the inner exception for details.
---> Devart.Data.Oracle.OracleException (0x80004005): ORA-01036: illegal variable name/number