Orcle Provider doesn't handle "keyword" field names
Posted: Mon 26 Nov 2012 20:47
When Orcle reserved keywords are used in field names, Devart oracle provider generates the following errors. Keywords include: Comment, Sequence, Style, Float, Required...
PM> Update-database -verbose
CREATE TABLE AZTECA.PANELITEM (
ITEMID NUMBER(18,2) NOT NULL,
PANELID NUMBER(18,2) NOT NULL,
ITEMNAME NVARCHAR2(512) NOT NULL,
ITEMTYPE NUMBER(18,2) NOT NULL,
CONTROLID NVARCHAR2(512) NULL,
ROW NUMBER(18,2) NOT NULL,
SEQUENCE NUMBER(18,2) NOT NULL,
TEXT NVARCHAR2(256) NULL,
HEIGHT NVARCHAR2(100) NULL,
WIDTH NVARCHAR2(100) NULL,
FORECOLOR NVARCHAR2(100) NULL,
BACKCOLOR NVARCHAR2(100) NULL,
ALIGNMENT NVARCHAR2(100) NULL,
STYLE NVARCHAR2(512) NULL,
REQUIRED NUMBER(18,2) NULL,
VISIBLE NUMBER(18,2) NULL,
SKINID NVARCHAR2(100) NULL,
CSSCLASS NVARCHAR2(512) NULL,
ROWCSSCLASS NVARCHAR2(256) NULL,
ROWSTYLE NVARCHAR2(256) NULL,
PRIMARY KEY (ITEMID)
)
Devart.Data.Oracle.OracleException (0x80004005): ORA-00904: : invalid identifier
at Devart.Data.Oracle.t.d()
at Devart.Data.Oracle.ar.h()
at Devart.Data.Oracle.ar.c()
at Devart.Data.Oracle.aa.a(Int32 A_0, bw A_1)
at Devart.Data.Oracle.OracleCommand.InternalExecute(CommandBehavior behavior, IDisposable disposable, Int32 startRecord, Int32 maxRecords, Boolean nonQuery)
at Devart.Common.DbCommandBase.ExecuteDbDataReader(CommandBehavior behavior, Boolean nonQuery)
at Devart.Data.Oracle.OracleCommand.ExecuteNonQuery()
at System.Data.Entity.Migrations.DbMigrator.ExecuteSql(DbTransaction transaction, MigrationStatement migrationStatement)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.ExecuteSql(DbTransaction transaction, MigrationStatement migrationStatement)
at System.Data.Entity.Migrations.DbMigrator.ExecuteStatements(IEnumerable`1 migrationStatements)
at System.Data.Entity.Migrations.Infrastructure.MigratorBase.ExecuteStatements(IEnumerable`1 migrationStatements)
at System.Data.Entity.Migrations.DbMigrator.ExecuteOperations(String migrationId, XDocument targetModel, IEnumerable`1 operations, Boolean downgrading, Boolean auto)
at System.Data.Entity.Migrations.DbMigrator.ApplyMigration(DbMigration migration, DbMigration lastMigration)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.ApplyMigration(DbMigration migration, DbMigration lastMigration)
at System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
at System.Data.Entity.Migrations.DbMigrator.Update(String targetMigration)
at System.Data.Entity.Migrations.Infrastructure.MigratorBase.Update(String targetMigration)
at System.Data.Entity.Migrations.Design.ToolingFacade.UpdateRunner.RunCore()
at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.Run()
ORA-00904: : invalid identifier
PM> Update-database -verbose
CREATE TABLE AZTECA.PANELITEM (
ITEMID NUMBER(18,2) NOT NULL,
PANELID NUMBER(18,2) NOT NULL,
ITEMNAME NVARCHAR2(512) NOT NULL,
ITEMTYPE NUMBER(18,2) NOT NULL,
CONTROLID NVARCHAR2(512) NULL,
ROW NUMBER(18,2) NOT NULL,
SEQUENCE NUMBER(18,2) NOT NULL,
TEXT NVARCHAR2(256) NULL,
HEIGHT NVARCHAR2(100) NULL,
WIDTH NVARCHAR2(100) NULL,
FORECOLOR NVARCHAR2(100) NULL,
BACKCOLOR NVARCHAR2(100) NULL,
ALIGNMENT NVARCHAR2(100) NULL,
STYLE NVARCHAR2(512) NULL,
REQUIRED NUMBER(18,2) NULL,
VISIBLE NUMBER(18,2) NULL,
SKINID NVARCHAR2(100) NULL,
CSSCLASS NVARCHAR2(512) NULL,
ROWCSSCLASS NVARCHAR2(256) NULL,
ROWSTYLE NVARCHAR2(256) NULL,
PRIMARY KEY (ITEMID)
)
Devart.Data.Oracle.OracleException (0x80004005): ORA-00904: : invalid identifier
at Devart.Data.Oracle.t.d()
at Devart.Data.Oracle.ar.h()
at Devart.Data.Oracle.ar.c()
at Devart.Data.Oracle.aa.a(Int32 A_0, bw A_1)
at Devart.Data.Oracle.OracleCommand.InternalExecute(CommandBehavior behavior, IDisposable disposable, Int32 startRecord, Int32 maxRecords, Boolean nonQuery)
at Devart.Common.DbCommandBase.ExecuteDbDataReader(CommandBehavior behavior, Boolean nonQuery)
at Devart.Data.Oracle.OracleCommand.ExecuteNonQuery()
at System.Data.Entity.Migrations.DbMigrator.ExecuteSql(DbTransaction transaction, MigrationStatement migrationStatement)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.ExecuteSql(DbTransaction transaction, MigrationStatement migrationStatement)
at System.Data.Entity.Migrations.DbMigrator.ExecuteStatements(IEnumerable`1 migrationStatements)
at System.Data.Entity.Migrations.Infrastructure.MigratorBase.ExecuteStatements(IEnumerable`1 migrationStatements)
at System.Data.Entity.Migrations.DbMigrator.ExecuteOperations(String migrationId, XDocument targetModel, IEnumerable`1 operations, Boolean downgrading, Boolean auto)
at System.Data.Entity.Migrations.DbMigrator.ApplyMigration(DbMigration migration, DbMigration lastMigration)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.ApplyMigration(DbMigration migration, DbMigration lastMigration)
at System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
at System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
at System.Data.Entity.Migrations.DbMigrator.Update(String targetMigration)
at System.Data.Entity.Migrations.Infrastructure.MigratorBase.Update(String targetMigration)
at System.Data.Entity.Migrations.Design.ToolingFacade.UpdateRunner.RunCore()
at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.Run()
ORA-00904: : invalid identifier