Read-SqlTableData
Lit les données d’une table d’une base de données SQL.
Syntaxe
Read-SqlTableData
[-TopN <Int64>]
[-ColumnName <String[]>]
[-ColumnOrder <String[]>]
[-ColumnOrderType <OrderType[]>]
[-OutputAs <OutputTypeSingleTable>]
[[-Path] <String[]>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Read-SqlTableData
[-TableName <String>]
[-TopN <Int64>]
[-ColumnName <String[]>]
[-ColumnOrder <String[]>]
[-ColumnOrderType <OrderType[]>]
[-OutputAs <OutputTypeSingleTable>]
[-DatabaseName <String>]
[-SchemaName <String>]
[-IgnoreProviderContext]
[-SuppressProviderContextWarning]
[[-ServerInstance] <String[]>]
[-Credential <PSCredential>]
[-ConnectionTimeout <Int32>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Read-SqlTableData
[-TopN <Int64>]
[-ColumnName <String[]>]
[-ColumnOrder <String[]>]
[-ColumnOrderType <OrderType[]>]
[-OutputAs <OutputTypeSingleTable>]
[-InputObject] <ScriptSchemaObjectBase[]>
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Description
L’applet de commande Read-SqlTableData lit les données stockées dans une table d’une base de données SQL. Vous pouvez sélectionner les colonnes à lire, limiter le nombre de lignes et trier et classer les colonnes.
Vous pouvez utiliser cette applet de commande avec le fournisseur SQL Windows PowerShell. Cette applet de commande peut déduire des informations telles que le serveur, la base de données, le schéma et la table à partir de son chemin d’accès actuel.
Cette applet de commande prend en charge les formats de sortie suivants :
- Jeu de données. Objet de type System.Data.DataSet qui contient une table.
- DataTable. Objet de type System.Data.DataTable. La propriété TableName de cet objet est identique à la table que cette applet de commande interroge.
- DataRows. Collection d’objets System.Data.DateRow.
Exemples
Exemple 1 : Obtenir trois lignes d’une table
PS C:\> Read-SqlTableData -ServerInstance "MyServer\MyInstance" -DatabaseName "MyDatabase" -SchemaName "dbo" -TableName "MyTable" -TopN 3
Id Name Amount
-- ---- ------
10 AAAAA -1.2
11 BBBBB 1.2
12 CCCCC -1.0
Cette commande obtient les trois premières lignes de la table MyDatabase.dbo.MyTable
sur l’instance de MyServer\MyInstance
.
Le paramètre TopN spécifie le nombre de lignes (3 dans ce cas).
Exemple 2 : Afficher une table entière
PS C:\> cd SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Tables\dbo.CSVTable
PS SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Tables\dbo.CSVTable> Read-SqlTableData
Id Name Amount
-- ---- ------
10 AAAA -1.2
11 BBBB 1.2
12 CCCC -1.0
13 DDDD -2.0
La première commande modifie l’emplacement pour qu’il s’agit d’une table dans le fournisseur SQLSERVER. L’invite de commandes reflète le nouvel emplacement.
Exemple 3 : Afficher les colonnes triées sélectionnées
PS C:\> cd SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Tables\dbo.CSVTable
PS SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Tables\dbo.CSVTable> Read-SqlTableData -TopN 3 -ColumnName "Id","Name" -ColumnOrder "Id","Name" -ColumnOrderType DESC,ASC
Id Name
-- ----
12 CCCC
11 BBBB
10 AAAA
Paramètres
-AccessToken
Jeton d’accès utilisé pour s’authentifier auprès de SQL Server, comme alternative à l’authentification utilisateur/mot de passe ou Windows.
Cela peut être utilisé, par exemple, pour se connecter à SQL Azure DB
et SQL Azure Managed Instance
à l’aide d’un Service Principal
ou d’un Managed Identity
.
Le paramètre à utiliser peut être une chaîne représentant le jeton ou un objet PSAccessToken
tel qu’il est retourné en exécutant Get-AzAccessToken -ResourceUrl https://database.windows.net
.
Ce paramètre est nouveau dans v22 du module.
Type: | PSObject |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ColumnName
Spécifie un tableau de noms de colonnes que cette applet de commande retourne.
Type: | String[] |
Alias: | ColumnToReturn |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ColumnOrder
Spécifie un tableau de noms de colonnes par lequel cette applet de commande trie les colonnes qu’elle retourne.
Type: | String[] |
Alias: | OrderBy |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ColumnOrderType
Spécifie un tableau de types d’ordre pour les colonnes retournées par cette applet de commande. Les valeurs acceptables pour ce paramètre sont les suivantes :
- ASC. Ascendant.
- DESC. Descendant.
Les valeurs que vous spécifiez pour ce paramètre correspondent aux colonnes que vous spécifiez dans le paramètre ColumnOrder. Cette applet de commande ignore toutes les valeurs supplémentaires.
Type: | OrderType[] |
Valeurs acceptées: | ASC, DESC |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ConnectionTimeout
Spécifie le nombre de secondes à attendre pour une connexion serveur avant une défaillance de délai d’attente. La valeur de délai d’attente doit être un entier compris entre 0 et 65534. Si 0 est spécifié, les tentatives de connexion n’expirent pas.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Spécifie un objet PSCredential pour la connexion à SQL Server. Pour obtenir un objet d’informations d’identification, utilisez l’applet de commande Get-Credential. Pour plus d’informations, tapez Get-Help Obtenir des informations d’identification.
Type: | PSCredential |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DatabaseName
Spécifie le nom de la base de données qui contient la table.
Si vous exécutez cette applet de commande dans le contexte d’une base de données ou d’un élément enfant d’une base de données, l’applet de commande ignore cette valeur de paramètre. Spécifiez le paramètre IgnoreProviderContext pour l’applet de commande afin d’utiliser la valeur du paramètre DatabaseName de toute façon.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Encrypt
Type de chiffrement à utiliser lors de la connexion à SQL Server.
Cette valeur est mappée à la propriété Encrypt
SqlConnectionEncryptOption
sur l’objet SqlConnection du pilote Microsoft.Data.SqlClient.
Dans la version 22 du module, la valeur par défaut est Optional
(pour la compatibilité avec v21). Dans la version 23+ du module, la valeur par défaut est « Obligatoire », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Type: | String |
Valeurs acceptées: | Mandatory, Optional, Strict |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-HostNameInCertificate
Nom d’hôte à utiliser pour valider le certificat TLS/SSL SQL Server. Vous devez passer ce paramètre si votre instance SQL Server est activée pour Forcer le chiffrement et que vous souhaitez vous connecter à une instance à l’aide du nom d’hôte/shortname. Si ce paramètre est omis, le passage du nom de domaine complet (FQDN) à -ServerInstance est nécessaire pour se connecter à une instance SQL Server activée pour Forcer le chiffrement.
Ce paramètre est nouveau dans v22 du module.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-IgnoreProviderContext
Indique que cette applet de commande n’utilise pas le contexte actuel pour remplacer les valeurs de l'ServerInstance
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-InputObject
Spécifie un tableau d’objets SMO (SQL Server Management Objects) qui représentent la table que cette applet de commande lit.
Type: | ScriptSchemaObjectBase[] |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-OutputAs
Spécifie le type de sortie.
Type: | OutputTypeSingleTable |
Alias: | As |
Valeurs acceptées: | DataSet, DataTable, DataRows |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Path
Spécifie le chemin d’accès à la table que cette applet de commande lit.
Type: | String[] |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ProgressAction
Détermine comment PowerShell répond aux mises à jour de progression générées par un script, une applet de commande ou un fournisseur, telles que les barres de progression générées par l’applet de commande Write-Progress. L’applet de commande Write-Progress crée des barres de progression qui affichent l’état d’une commande.
Type: | ActionPreference |
Alias: | proga |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-SchemaName
Spécifie le nom du schéma de la table.
Si vous exécutez cette applet de commande dans le contexte d’une base de données ou d’un élément enfant d’une base de données, l’applet de commande ignore cette valeur de paramètre. Spécifiez le paramètre IgnoreProviderContext pour l’applet de commande afin d’utiliser la valeur du paramètre SchemaName de toute façon.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ServerInstance
Spécifie le nom d’une instance de SQL Server.
Pour l’instance par défaut, spécifiez le nom de l’ordinateur.
Pour les instances nommées, utilisez le format ComputerName\InstanceName
.
Si vous exécutez cette applet de commande dans le contexte d’une base de données ou d’un élément enfant d’une base de données, l’applet de commande ignore cette valeur de paramètre. Spécifiez le paramètre IgnoreProviderContext pour l’applet de commande afin d’utiliser la valeur du paramètre ServerInstance de toute façon.
Type: | String[] |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-SuppressProviderContextWarning
Indique que cette applet de commande supprime le message d’avertissement qui indique que l’applet de commande utilise le contexte du fournisseur.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-TableName
Spécifie le nom de la table à partir de laquelle cette applet de commande lit.
Si vous exécutez cette applet de commande dans le contexte d’une base de données ou d’un élément enfant d’une base de données, l’applet de commande ignore cette valeur de paramètre. Spécifiez le paramètre IgnoreProviderContext pour l’applet de commande afin d’utiliser la valeur du paramètre TableName de toute façon.
Type: | String |
Alias: | Name |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-TopN
Spécifie le nombre de lignes de données retournées par cette applet de commande. Si vous ne spécifiez pas ce paramètre, l’applet de commande retourne toutes les lignes.
Type: | Int64 |
Alias: | First |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-TrustServerCertificate
Indique si le canal sera chiffré lors du contournement de la marche à pied de la chaîne de certificats pour valider l’approbation.
Dans la version 22 du module, la valeur par défaut est $true
(pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « $false », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
System.String[]