private static Sytem.Data.Common.Ex.DataTable ConstructSchemaTable() { Type booleanType = typeof(bool); Type stringType = typeof(string); Type intType = typeof(int); Type typeType = typeof(Type); Type shortType = typeof(short); var schemaTable = new Sytem.Data.Common.Ex.DataTable("SchemaTable"); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("ColumnName", stringType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("ColumnOrdinal", intType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("ColumnSize", intType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("NumericPrecision", shortType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("NumericScale", shortType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("DataType", typeType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("ProviderType", intType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("IsLong", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("AllowDBNull", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("IsAliased", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("IsExpression", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("IsKey", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("IsUnique", booleanType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("BaseSchemaName", stringType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("BaseTableName", stringType)); schemaTable.Columns.Add(new Sytem.Data.Common.Ex.DataColumn("BaseColumnName", stringType)); return(schemaTable); }
internal OracleDataReader(OracleCommand command, OciStatementHandle statement, bool extHasRows, CommandBehavior behavior) { this.command = command; this.hasRows = extHasRows; this.schemaTable = ConstructSchemaTable(); this.statement = statement; this.statementType = statement.GetStatementType(); this.behavior = behavior; }