I use this script in server 2008 R2 for Storing Windows Event Viewer Output in a SQL Server table with PowerShell :
foreach ($server in Get-Content c:tempservers.txt) { $variable = ( Get-EventLog -ComputerName $server -LogName Security -After 22-08-2011 | select @{Expression={$($server) };Label = ComputerName} ,index,TimeGenerated,EntryType,Source,InstanceID,Message ) $valuedatatable = Out-DataTable -InputObject $variable Write-DataTable -ServerInstance YourServer -Database YourDatabase -TableName EventError -data $valuedatatable