Compare Two Datatables

  • Thread starter Thread starter John Wright
  • Start date Start date
J

John Wright

I have two datatables that I load. One I load from LDAP, the other gets
loaded from Excel. I need to check to see which names are in the LDAP that
are not in the Excel table and vica versa. There are about 300 records in
each. Short of a brute force attack on this, does anyone have an elegant
way to list the non-matches in each table?

Thanks.

John
 
Doesnt SQL server have a compare on two databases as well?
-If the two have the same schema ?

I remember reading something up on this a while ago. I cannot remember if
it was "in code .net" or if it was part of the sql server options.

Might be a good quick way if this is a one time thing.
If it even exists of what I am talking about. - otherwise - sorry for the
post.

Miro
 
Thanks Cor for the suggestion. Now I guess this needs to get a little
Fuzzy. I need to do a like comparison search on the rows as well. Most of
the rows are the same, but there are some that are slightly different. For
example in on list the lastname will be Smith III (Smith the 3rd) while in
the other list it is just Smith. So I would like to make a 1 for 1
comparison at the row level as suggested then, use the unmatched names and
do a like search to provide the user of possible matches. Any suggestions
on doing a like search?

John
 
John,

Then if you have found the row(in the other case there is no need for it of
course). Then start an innerloop using the columns.

It go's always like this.

You take the row with the less equal names and then (I type it here so see
it a little bit as pseudo code)

dim equal = true
\\\
for each colum as DataColumn in drInTheLoop.Columns
'For the columns you want to skip
if Not "ColumnNameA ColumnNameB".Contains(column.ColumnName) then
if not drInTheLoop.Item(column.Column) =
foundDataRow.Item(column.Column.ColumnName) then
if not equal = false then equal = false
end if
end if
end for
///

Be aware that looping seldom takes more time then a direct statement, as you
don't do it, then it is done behind the scene. DotNet is build around
collections.

Cor
 
Using this as an example I get the error about a primary key. Since these
tables are pulled from LDAP and an Excel spreadsheet there is no primary
key. Any other ideas on how to search without a primary key?


John
 
Back
Top