Quantcast
Channel: Windows Forms Data Controls and Databinding forum
Viewing all articles
Browse latest Browse all 2535

Update DataTable Column

$
0
0

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"]};


Viewing all articles
Browse latest Browse all 2535

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>