public void CanUploadTable() { var manifestObject = GetJsonFile <DatabaseJobManifest>(_inputRoot, "database.manifest.mysql.json"); var sql = GetJsonFile <TargetSql>(_inputRoot, "mysql.target.ateam.json"); var data = CreateTable(); var target = new MySqlWriter(); target.UploadTable(connectionString, sql.SetupTempDml, manifestObject.manifest.tables[0], data, new List <string> { sql.UpdateFromTempDml, sql.ClearTempDml }); var reader = new MySqlReader(); // Only get the records what you have Updated in database on the basis of Ids {Primary Keys} var result = reader.GetData(connectionString, $"select * from ex8_db1.ATeam where Id in ({string.Join(",",data.AsEnumerable().Select(r => r.Field<dynamic>("Id")))})"); result.Tables.Should().NotBeEmpty(); result.Tables[0].Rows.Should().NotBeEmpty(); result.Tables[0].Should().Equals(data); }
public void Can_GetData_WithLimitAndOffset() { var builder = new MySqlBuilder(); var query = builder.SelectDmlPageBuilder($"Select * from ex8_db1.ATeam", "Id", 50000, 9); var target = new MySqlReader(); var dataTable = target.GetData(connectionString, query); dataTable.Tables.Should().NotBeEmpty(); dataTable.Tables[0].Rows.Count.Should().Equals(50000); dataTable.Tables[0].Rows.Should().NotBeEmpty(); }
public void Can_GetData() { var target = new MySqlReader(); var dataTable = target.GetData(connectionString, $"Select * from ex8_db1.ATeam"); int expectedOutput = target.ExecuteScalar <int>(connectionString, $"Select count(*) from ex8_db1.ATeam"); int actualOutput = dataTable.Tables[0].Rows.Count; dataTable.Tables.Should().NotBeEmpty(); dataTable.Tables[0].Rows.Should().NotBeEmpty(); expectedOutput.Should().Be(actualOutput); }