I am trying to learn how to manipulate data tables and want to update a column based on it's value and that of another. In SQL I would write.
update tblPKIEN set TargetSchema = @Schema where TargetSchema != 'xxxx' and dwTableName = @tblName
Not knowing the best or easiest way I searched the net and found mostly LINQ queries. I tried monkey see monkey do but hasn't worked for me so far and I don't know the basic rules. When following in debugger it takes a look at ForEach and goes on. But I know I have rows matching the criteria. (tried using both columns and then with just dwTableName)
var query
= from test in tblPKIEN.AsEnumerable()
where test.Field<string>("dwTableName") == columns[0] && test.Field<string>("TargetSchema") != "xxxx"
select new
{
dwTableName = test.Field<string>("dwTableName")
//TargetSchema = test.Field<string>("TargetSchema")
};
foreach (var Name in query)
{
Console.WriteLine("Table Name: {0} Target Schema: {1}",
Name.dwTableName,
Name.TargetSchema
);
}The table definition:
//PKIEN
tblPKIEN.Columns.Add("ColumnName");
tblPKIEN.Columns.Add("FMFileName");
tblPKIEN.Columns.Add("FMFileNumber");
tblPKIEN.Columns.Add("PrimaryKeyEntitySID");
tblPKIEN.Columns.Add("TargetSchema");
tblPKIEN.Columns.Add("dwTableName");
tblPKIEN.PrimaryKey = new DataColumn[] {tblPKIEN.Columns["FMFileName"],
tblPKIEN.Columns["FMFileNumber"]};