简体   繁体   English

Powershell 比较数据表并发送电子邮件

[英]Powershell Compare Datatables and Send Email

I need to find discrepancies from tables in two different SQL databases.我需要从两个不同的 SQL 数据库中的表中找出差异。 The two tables have the same headers and look like below.这两个表具有相同的标题,如下所示。 If the sales of a same site, same store and same register in one database source are different with the other, then insert rows that have differences into email body and send it.如果一个数据库源中的同一个站点、同一个商店和同一个寄存器的销售额与另一个不同,则将有差异的行插入电子邮件正文中并发送。

表

Email body should look like this电子邮件正文应如下所示

在此处输入图片说明

I tried Compare-Object and write to csv file to see if it works but unfortunately it did not save the differences in the csv file.我尝试了比较对象并写入 csv 文件以查看它是否有效,但不幸的是它没有保存 csv 文件中的差异。

Compare-Object -ReferenceObject $table1 -DifferenceObject $table2 -Property $headers -PassThru | Select-Object * -ExcludeProperty SideIndicator | Export-Csv "$OuputFile diff.csv" -NoTypeInformation

Would you please help?你能帮忙吗?

Thank you.谢谢你。

Below code works for me下面的代码对我有用

> $csvXStore = import-csv -Path "$OuputFile XStore.csv" $csvXBR =
> import-csv -Path "$OuputFile XBR.csv"
> 
> 
> $diff = Compare-Object -Ref $csvXStore -Diff $csvXBR -Property Date,
> Store, Register, Sales, test -PassThru |
> #    Where-Object SideIndicator -eq '<=' | 
>        Select-Object -Property * -ExcludeProperty SideIndicator

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM