2025-06-26 12:51:32 +02:00

40 lines
1.3 KiB
PowerShell

param(
[Parameter(Mandatory=$true)]
[string]$TableName
)
# Importa configurazione
. "$PSScriptRoot\conf.ps1"
# Carica l'assembly System.Data
Add-Type -AssemblyName System.Data
$OutputFile = Join-Path $PSScriptRoot "..\extract\$TableName.csv"
$Query = "SELECT * FROM $TableName"
try {
Write-Host "Connessione a $env:dbHostInput, database $env:dbNameInput..."
# Crea la connessione e esegui la query
$connectionString = "Server=$($env:dbHostInput);Database=$($env:dbNameInput);User Id=$($env:dbUserInput);Password=$($env:dbPasswordInput);TrustServerCertificate=True"
$connection = New-Object System.Data.SqlClient.SqlConnection($connectionString)
$command = New-Object System.Data.SqlClient.SqlCommand($Query, $connection)
$adapter = New-Object System.Data.SqlClient.SqlDataAdapter($command)
$dataset = New-Object System.Data.DataSet
$adapter.Fill($dataset) | Out-Null
$result = $dataset.Tables[0]
if ($result) {
$result | Export-Csv -Path $OutputFile -NoTypeInformation -Delimiter ";" -Encoding UTF8
} else {
throw "Nessun dato trovato nella tabella $TableName"
}
Write-Host "Dati esportati con successo in: $OutputFile"
}
catch {
Write-Error "Errore durante l'estrazione dei dati: $_"
exit 1
}