Function SQL query Dataset
Bonjour,
J'ai un script powershell dans lequel j'ai une fonction qui fait des requetes SQL et qui retourne une table.
Dans SQL server, lorsque j'execute chaque requete sur mes differentes db mon resultat s'affiche bien.
Dans PS, ma premiere requete passe bien, mais les suivantes me retourne l'erreur suivante :
Code:
1 2 3 4
|
Exception calling "Fill" with "1" argument(s): "Invalid object name 'ArchivePoint'."+
$SqlAdapter.Fill <<<< ($DataSet) + CategoryInfo : NotSpecified: (:) [], MethodInvocationException
FullyQualifiedErrorId : DotNetMethodException |
Voici le script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
$Sqlserver = "dss0000139\DX_SV_XK1KVS"
$SqlevDir = "EnterpriseVaultDirectory"
$SqlKVSdb = "SELECT ComputerNameAlternate as Server, DatabaseDSN, VaultStoreEntryId FROM View_Computer_VaultStore"
$SqlStat = "SELECT COUNT(*) as VaultCount,SUM(ArchivedItems) as ArchivedItems, SUM(CAST(ArchivedItemsSize as decimal(20, 0))) as ArchivedItemsSize From ArchivePoint"
function SqlExec( $Server, $Database, $Query ){
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection $SqlConnection.ConnectionString = "Server = $Server; Database = $Database; Integrated Security = True"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = $Query
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter $SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$SqlAdapter | Out-Null
$SqlConnection.Close()
return $DataSet.Tables[0]
}
$KVS = SqlExec -Server $Sqlserver -Database $SqlevDir -Query $SqlKVSdb
$KVS
$KVS | foreach {
# Requete sur les statistiques pour chaque serveur KVS
$stat = SqlExec -Server $Sqlserver -Database $_.DatabaseDSN -Query $SqlStat
$stat
} |
Merci de vos retours