Read-SqlTableData
Legge i dati da una tabella di un database SQL.
Sintassi
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>]
Descrizione
Il cmdlet Read-SqlTableData
È possibile usare questo cmdlet con il provider SQL di Windows PowerShell. Questo cmdlet può dedurre informazioni quali server, database, schema e tabella dal percorso corrente.
Questo cmdlet supporta i formati di output seguenti:
- Dataset. Oggetto di tipo System.Data.DataSet contenente una tabella.
- DataTable. Oggetto di tipo System.Data.DataTable. La proprietà TableName di questo oggetto corrisponde alla tabella su cui viene eseguita la query di questo cmdlet.
- DataRows. Insieme di oggetti System.Data.DateRow.
Esempio
Esempio 1: Ottenere tre righe da una tabella
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
Questo comando ottiene le prime tre righe dalla tabella MyDatabase.dbo.MyTable
nell'istanza di MyServer\MyInstance
.
Il parametro topN
Esempio 2: Visualizzare un'intera tabella
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
Il primo comando modifica la posizione in modo che sia una tabella nel provider SQLSERVER. Il prompt dei comandi riflette il nuovo percorso.
Esempio 3: Visualizzare le colonne ordinate selezionate
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
Parametri
-AccessToken
Token di accesso usato per eseguire l'autenticazione a SQL Server, come alternativa all'autenticazione utente/password o windows.
Può essere usato, ad esempio, per connettersi a SQL Azure DB
e SQL Azure Managed Instance
usando un Service Principal
o un Managed Identity
.
Il parametro da usare può essere una stringa che rappresenta il token o un oggetto PSAccessToken
restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net
.
Questo parametro è nuovo nella versione 22 del modulo.
Tipo: | PSObject |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ColumnName
Specifica una matrice di nomi di colonne restituite dal cmdlet.
Tipo: | String[] |
Alias: | ColumnToReturn |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ColumnOrder
Specifica una matrice di nomi di colonne in base alla quale questo cmdlet ordina le colonne restituite.
Tipo: | String[] |
Alias: | OrderBy |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ColumnOrderType
Specifica una matrice di tipi di ordine per le colonne restituite dal cmdlet. I valori accettabili per questo parametro sono:
- ASC. Ascendente.
- DESC. Discendente.
I valori specificati per questo parametro corrispondono alle colonne specificate nel parametro ColumnOrder. Questo cmdlet ignora tutti i valori aggiuntivi.
Tipo: | OrderType[] |
Valori accettati: | ASC, DESC |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ConnectionTimeout
Specifica il numero di secondi di attesa di una connessione server prima di un errore di timeout. Il valore di timeout deve essere un numero intero compreso tra 0 e 65534. Se si specifica 0, i tentativi di connessione non si verifica il timeout.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Credential
Specifica un oggetto PSCredential per la connessione a SQL Server. Per ottenere un oggetto credenziale, usare il cmdlet Get-Credential. Per altre informazioni, digitare Get-Help Get-Credential.
Tipo: | PSCredential |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-DatabaseName
Specifica il nome del database che contiene la tabella.
Se si esegue questo cmdlet nel contesto di un database o di un elemento figlio di un database, il cmdlet ignora questo valore di parametro.
Specificare il parametro IgnoreProviderContext
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Encrypt
Tipo di crittografia da usare per la connessione a SQL Server.
Questo valore esegue il mapping alla proprietà Encrypt
SqlConnectionEncryptOption
sull'oggetto SqlConnection del driver Microsoft.Data.SqlClient.
Nella versione 22 del modulo, il valore predefinito è Optional
(per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "Obbligatorio", che potrebbe creare una modifica di rilievo per gli script esistenti.
Questo parametro è nuovo nella versione 22 del modulo.
Tipo: | String |
Valori accettati: | Mandatory, Optional, Strict |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-HostNameInCertificate
Nome host da usare per convalidare il certificato TLS/SSL di SQL Server. È necessario passare questo parametro se l'istanza di SQL Server è abilitata per Forza crittografia e si vuole connettersi a un'istanza usando nome host/nome breve. Se questo parametro viene omesso, è necessario passare il nome di dominio completo (FQDN) a -ServerInstance per connettersi a un'istanza di SQL Server abilitata per Forza crittografia.
Questo parametro è nuovo nella versione 22 del modulo.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-IgnoreProviderContext
Indica che questo cmdlet non usa il contesto corrente per eseguire l'override dei valori del ServerInstance, DatabaseName, SchemaNamee parametri TableName. Se non si specifica questo parametro, il cmdlet ignora i valori di questi parametri, se possibile, a favore del contesto in cui si esegue il cmdlet.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-InputObject
Specifica una matrice di oggetti SMO (SQL Server Management Objects) che rappresentano la tabella letta da questo cmdlet.
Tipo: | ScriptSchemaObjectBase[] |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-OutputAs
Specifica il tipo di output.
Tipo: | OutputTypeSingleTable |
Alias: | As |
Valori accettati: | DataSet, DataTable, DataRows |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Path
Specifica il percorso della tabella che questo cmdlet legge.
Tipo: | String[] |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ProgressAction
Determina in che modo PowerShell risponde agli aggiornamenti dello stato generati da uno script, un cmdlet o un provider, ad esempio le barre di stato generate dal cmdlet Write-Progress. Il cmdlet Write-Progress crea barre di stato che mostrano lo stato di un comando.
Tipo: | ActionPreference |
Alias: | proga |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-SchemaName
Specifica il nome dello schema per la tabella.
Se si esegue questo cmdlet nel contesto di un database o di un elemento figlio di un database, il cmdlet ignora questo valore di parametro.
Specificare il parametro
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ServerInstance
Specifica il nome di un'istanza di SQL Server.
Per l'istanza predefinita, specificare il nome del computer.
Per le istanze denominate, usare il formato ComputerName\InstanceName
.
Se si esegue questo cmdlet nel contesto di un database o di un elemento figlio di un database, il cmdlet ignora questo valore di parametro.
Specificare il parametro IgnoreProviderContext
Tipo: | String[] |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-SuppressProviderContextWarning
Indica che questo cmdlet elimina il messaggio di avviso che indica che il cmdlet usa il contesto del provider.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-TableName
Specifica il nome della tabella da cui viene letto questo cmdlet.
Se si esegue questo cmdlet nel contesto di un database o di un elemento figlio di un database, il cmdlet ignora questo valore di parametro.
Specificare il parametro IgnoreProviderContext
Tipo: | String |
Alias: | Name |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-TopN
Specifica il numero di righe di dati restituiti da questo cmdlet. Se non si specifica questo parametro, il cmdlet restituisce tutte le righe.
Tipo: | Int64 |
Alias: | First |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-TrustServerCertificate
Indica se il canale verrà crittografato durante il bypass della catena di certificati per convalidare l'attendibilità.
Nella versione 22 del modulo, il valore predefinito è $true
(per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "$false", che potrebbe creare una modifica di rilievo per gli script esistenti.
Questo parametro è nuovo nella versione 22 del modulo.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
System.String[]