private void CreateTable() { IColumnFactory columnFactory = DbContext.PowerPlant.CreateColumnFactory(); List <IColumn> columns = new List <IColumn> { columnFactory.CreateInstance(ColumnTypeName.Int64, "id", 0, 20, 0, false, false, "0", ""), columnFactory.CreateInstance(ColumnTypeName.Int, "seq_no", 0, 15, 0, false, false, "0", ""), columnFactory.CreateInstance(ColumnTypeName.Varchar, "val", 50, false, "' '", "Danish_Norwegian_CI_AS") }; TableDefinition tableDefinition = new TableDefinition(TestTable, columns, ""); DbSchema.CreateTable(tableDefinition); }
protected void CreateTable(ColumnTypeName type, int length, int prec, int scale, bool isNullable, string def, string collation) { IAXmlReader xmlReader = new AXmlReader(DbContext); ITableDefinition tableDefinition = xmlReader.ReadSchema( DbContext.ColumnTypeConverterForRead, XmlFileHelper.CreateSchemaXmlOneColumn(TableName, type.ConvertToString(), length, prec, scale, isNullable, def, collation)); DbSchema.CreateTable(tableDefinition); }
protected void TestColumn(ColumnTypeName type, int length, int prec, int scale, bool isNullable, string def, string collation) { List <IColumn> columns = new List <IColumn> { ColumnFactory.CreateInstance(type, "col1", length, prec, scale, isNullable, false, def, collation) }; ITableDefinition expectedTableDefinition = PowerPlant.CreateTableDefinition(TableName, columns, ""); DbSchema.CreateTable(expectedTableDefinition); var columnTypeConverter = DbContext.PowerPlant.CreateColumnTypeConverter(ConversionFileForWrite); ITableDefinition retrievedTableDefinition = DbSchema.GetTableDefinition(columnTypeConverter, TableName); AssertTableDefinition(expectedTableDefinition, retrievedTableDefinition); }
protected virtual void CreateTestTable1Row3Columns1Value(IColumn col, string testValue = "NULL") { IColumnFactory columnFactory = DbContext.PowerPlant.CreateColumnFactory(); List <IColumn> columns = new List <IColumn> { columnFactory.CreateInstance(ColumnTypeName.Int64, "id", 0, 20, 0, false, false, "0", ""), col, columnFactory.CreateInstance(ColumnTypeName.Varchar, "val", 50, false, "' '", "Danish_Norwegian_CI_AS") }; TableDefinition tableDefinition = new TableDefinition(TestTable, columns, ""); DbSchema.CreateTable(tableDefinition); string tmp = string.Format("insert into {0} (id, test_col, val) values (9, {1}, 'control value')", TestTable, testValue); Commands.ExecuteNonQuery(tmp); }
private bool ReadTable(string schemaFile) { var stopWatch = new Stopwatch(); stopWatch.Start(); string currentTableName; long rowCounter; try { var tableDefinition = GetTableDefinition(schemaFile); var raw16Columns = _dbContext.DbType == DbTypeName.Oracle ? tableDefinition.GetRaw16Columns() : new List <string>(); tableDefinition.Columns .FindAll(c => raw16Columns.Contains(c.Name)) .ForEach(c => c.Details["Length"] = 17); _dbSchema.DropTable(tableDefinition.Name); _dbSchema.CreateTable(tableDefinition); ClusteredIndexOnAgrtid(tableDefinition); currentTableName = tableDefinition.Name; _logger.Write($"{currentTableName,30} Started..."); var fileName = GetDataFileName(currentTableName); rowCounter = BulkLoadData(tableDefinition, fileName); WhenOracleAlterRawColumns(tableDefinition.Name, raw16Columns, 16); _dbSchema.CreateIndexes(tableDefinition.Indexes); } catch (Exception ex) { _logger.Write($"ERROR while reading table. Current schema file: {schemaFile}:"); _logger.Write(ex); return(false); } stopWatch.Stop(); var message = $"{currentTableName,30} {rowCounter,10} rows read. Time: {stopWatch.Elapsed}"; _logger.Write(message); return(true); }