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 }