IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Function SQL query Dataset


Sujet :

Scripts/Batch

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 52
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Salut,
    Citation Envoyé par fabrice518 Voir le message
    Dans PS, ma premiere requete passe bien, mais les suivantes me retourne l'erreur suivante :
    Vérifie si le résultat de la première requête contient bien le résultat sous la forme attendue, ensuite utilise Resolve-Error ( dispo sur le blog de l'equipe Powershell) pour le détail de l'exception.

    Il manque un retour chariot sur la ligne 7 du premier exemple et un ligne 13 du second exemple de code.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 52
    Par défaut Powershell Dataset (SQL)
    Bonjour Laurent,

    Pour les retours chariot, pas d'inquiétude, c'est un mauvais copier/coller...
    La fonction Resolve-Error ne m'affiche pas grand chose de plus a part les '0' et les '1'...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Exception calling "Fill" with "1" argument(s): "Invalid object name 'ArchivePoint'."
    At C:\Users\Admfmelis\Desktop\KVS.ps1:37 char:25
    +         $SqlAdapter.Fill <<<< ($DataSet)
        + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
        + FullyQualifiedErrorId : DotNetMethodException
     
                                                                                                                                                                  
    00000000000000000000000000000000000000000000000000000000000000000000000000000000
    Exception calling "Fill" with "1" argument(s): "Invalid object name 'ArchivePoint'."
    11111111111111111111111111111111111111111111111111111111111111111111111111111111
    Invalid object name 'ArchivePoint'.

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par fabrice518 Voir le message
    BLa fonction Resolve-Error ne m'affiche pas grand chose de plus a part les '0' et les '1'...
    Il s'agit de 'séparateur' pour les exceptions imbriquées.
    D'aprés Google 'dbdataadpater fill Invalid object name', essaie en précisant le nom de schéma avec le nom de la table.

Discussions similaires

  1. [SQL QUERY] Problème avec les servlet plutôt qu'avec SQL
    Par Battosaiii dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 11/04/2006, 01h08
  2. SQL Query sur deux tables différentes.
    Par kabal22 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 25/12/2005, 17h52
  3. SQL Query. Récupérer une valeur
    Par James64 dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/11/2005, 14h15
  4. Utilisation de l'apostrophe en SQL QUERY
    Par joshua.shamael dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 28/04/2005, 17h53
  5. Recherche Data pour m'exercer en SQL-Query
    Par Oneill dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 13/10/2004, 11h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo