Я использую модуль Export-Excel для создания файла сопоставления для переноса базы данных.Два источника данных:
- Доступ (источник)
- SQL Server (назначение)
Когда я извлекаю данные из SQL-сервера и отправляю их вExport-Excel все хорошо.Когда я использую данные из Access, они оказываются нечитаемыми, т.е.*
Вот код, который я использую для извлечения данных и их экспорта в Excel:
Function Get-AccessData {
param ($sql)
Try {
#Connection
$Connection = New-Object -TypeName System.Data.OleDb.OleDbConnection
#Connection string
$Connection.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= $($Settings.Files.access)"
#create command and fill dataset
$ConCommand = $Connection.CreateCommand()
$ConCommand.CommandText = $SQL
$OAdapt = New-Object -TypeName System.Data.OleDb.OleDbDataAdapter $ConCommand
$DS = New-Object -TypeName System.Data.DataSet
$OAdapt.Fill($DS) | out-null
return $DS
}
Catch {
Set-Output "[!] Access database connection failed" -colour RED -logfilepath $log_prerequisites
Set-Output " Ensure that Microsoft.ACE.OLEDB.12.0 provider is installed" -colour RED -logfilepath $log_prerequisites
Set-Output "$_" -logfilepath $log_prerequisites
break
}
}
((Get-AccessData -sql "SELECT DISTINCT positionfrom JobOrder").tables | format-table)
$JobTypes | Export-Excel $mFile_JobType -Autosize -FreezeTopRow -BoldTopRow -WorkSheetName "Job Types" -show