Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Entity Framework Core - Take(1), Single(), First()... Não está funcionando com o Oracle Provider (ORA-00933:comando SQL não finalizado corretamente)


Aparentemente, você está direcionando um banco de dados Oracle mais antigo que não suporta o mais novo FETCH FIRST N ROWS ONLY construção SQL.

Para obter o ROWNUM mais antigo tradução SQL baseada, você deve utilizar o opcional Action<OracleDbContextOptionsBuilder> oracleOptionsAction parâmetro de UseOracle método e UseOracleSQLCompatibility método de extensão com valor "11" (os únicos valores atualmente suportados são "11" e "12"):
.UseOracle(connection_string, options => options
    .UseOracleSQLCompatibility("11"))