public ClickHouseMigrations( IClickHouseDatabase dbProvider, ILogger <ClickHouseMigrations> logger, ClickHouseConnectionSettings connectionSettings, IClickHouseMigrationLocator locator) { _dbProvider = dbProvider; _logger = logger; if (string.IsNullOrWhiteSpace(connectionSettings.Database)) { throw new ArgumentException("Error applying migrations. Database is not set in connectionSettings.", nameof(connectionSettings)); } _connectionSettings = connectionSettings; _locator = locator; }
public static bool CastRawValuesToClassTypeProperties(IClickHouseDatabase db) { if (db.TableExists("Test")) { db.DropTable("Test"); } db.CreateTable(new Table { Engine = "MergeTree(date, (date, Id, Number, Cost), 8192)", Name = "Test", Columns = new List <Column>() { new Column("date", "Date"), new Column("Id", "String"), new Column("Number", "Int32"), new Column("Cost", "Float64"), new Column("Name", "String"), new Column("Ushort", "UInt16"), new Column("Uint", "UInt32"), } }); var testItem = new TestDataItem3 { Id = Guid.NewGuid(), Number = -96, Cost = 31, Name = "Jon Skeet", Ushort = 150, Uint = 65536 }; var command = testItem.GetInsertCommand(); db.ExecuteNonQuery(command); command = "SELECT Id, Number, Cost, Name, Ushort, Uint FROM Test"; var resultItem = db.ExecuteQueryMapping <TestDataItem3>(command, convention: new UnderscoreNamingConvention()).Single(); db.DropTable("Test"); return(testItem.Equals(resultItem)); }
public ClickHouseHealthCheck(IClickHouseDatabase database) { _database = database ?? throw new ArgumentNullException(nameof(database)); }
public abstract bool Process(IClickHouseDatabase provider);
public override bool Process(IClickHouseDatabase provider) { return(true); }
public ClickHouseService(IClickHouseDatabase db) { _db = db; }