Read-SqlViewData

Legge i dati da una vista di un database SQL.

Sintassi

Read-SqlViewData
    [-TopN <Int64>]
    [-ColumnName <String[]>]
    [-ColumnOrder <String[]>]
    [-ColumnOrderType <OrderType[]>]
    [-OutputAs <OutputTypeSingleTable>]
    [[-Path] <String[]>]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [<CommonParameters>]
Read-SqlViewData
    [-ViewName <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>]
    [<CommonParameters>]
Read-SqlViewData
    [-TopN <Int64>]
    [-ColumnName <String[]>]
    [-ColumnOrder <String[]>]
    [-ColumnOrderType <OrderType[]>]
    [-OutputAs <OutputTypeSingleTable>]
    [-InputObject] <ScriptSchemaObjectBase[]>
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [<CommonParameters>]

Descrizione

Il cmdlet Read-SqlViewData legge i dati archiviati in una vista di un database SQL. È possibile selezionare le colonne da leggere, limitare il numero di righe e ordinare le colonne.

È possibile usare questo cmdlet con il provider SQL 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 che contiene 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 due righe da una vista

PS C:\> Read-SqlViewData -ServerInstance "MyServer\MyInstance" -DatabaseName "MyDatabase" -SchemaName "dbo" -ViewName "MyView" -TopN 2

Id Name   Amount
-- ----   ------
10 AAAAA  -1.2
11 BBBBB  1.2

Questo comando ottiene le prime due righe dalla vista MyDatabase.dbo.MyView del database nell'istanza MyServer\MyInstance di . Il parametro TopN specifica il numero di righe (2 in questo caso).

Esempio 2: Visualizzare un'intera visualizzazione

PS C:\> cd SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Views\dbo.MyView
PS SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Views\dbo.MyView> Read-SqlViewData

Id Name Amount
-- ---- ------
10 AAAA -1.2
11 BBBB 1.2
12 CCCC -1.0
13 DDDD -2.0

Il primo comando modifica il percorso in modo che sia una visualizzazione 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\Views\dbo.MyView
PS SQLSERVER:\sql\MyServer\MyInstance\Databases\MyDatabase\Views\dbo.MyView> Read-SqlViewData -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 per SQL Server, in 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 oggetto o .Managed Identity

Il parametro da usare può essere una stringa che rappresenta il token o un PSAccessToken oggetto restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net.

Questo parametro è nuovo nella versione 22 del modulo.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ColumnName

Specifica una matrice di nomi di colonne restituite da questo cmdlet.

Type:String[]
Aliases:ColumnToReturn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ColumnOrder

Specifica una matrice di nomi di colonne in base alla quale questo cmdlet ordina le colonne restituite.

Type:String[]
Aliases:OrderBy
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ColumnOrderType

Specifica una matrice di tipi di ordine per le colonne restituite da questo cmdlet. I valori validi per questo parametro sono:

  • ASC. Ascendente.
  • DESC. Discendente.

I valori specificati per questo parametro corrispondono alle colonne specificate nel parametro ColumnOrder . Questo cmdlet ignora eventuali valori aggiuntivi.

Type:OrderType[]
Accepted values:ASC, DESC
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionTimeout

Specifica il numero di secondi di attesa per 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, non si verifica alcun timeout dei tentativi di connessione.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

Specifica il nome del database che contiene la vista.

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 per il cmdlet in modo che usi comunque il valore del parametro DatabaseName .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encrypt

Tipo di crittografia da utilizzare per la connessione a SQL Server.

Questo valore esegue il Encrypt mapping alla proprietà SqlConnectionEncryptOption nell'oggetto SqlConnection del driver Microsoft.Data.SqlClient.

Nella versione 22 del modulo il valore predefinito è Optional (per compatibilità con la versione 21). Nella versione 23+ del modulo il valore predefinito sarà "Obbligatorio", che può creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

Nome host da usare per la convalida del 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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IgnoreProviderContext

Indica che questo cmdlet non usa il contesto corrente per eseguire l'override dei valori dei parametri ServerInstance, DatabaseName, SchemaName e ViewName . 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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Specifica una matrice di oggetti SMO (Management Objects) di SQL Server che rappresentano la visualizzazione letta da questo cmdlet.

Type:ScriptSchemaObjectBase[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-OutputAs

Specifica il tipo di output.

Type:OutputTypeSingleTable
Aliases:As
Accepted values:DataSet, DataTable, DataRows
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Specifica il percorso della visualizzazione che questo cmdlet legge.

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SchemaName

Specifica il nome dello schema per la vista.

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 per il cmdlet per usare comunque il valore del parametro SchemaName .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 per il cmdlet per usare comunque il valore del parametro ServerInstance .

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SuppressProviderContextWarning

Indica che questo cmdlet elimina il messaggio di avviso che indica che il cmdlet usa il contesto del provider.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TopN

Specifica il numero di righe di dati restituite da questo cmdlet. Se non si specifica questo parametro, il cmdlet restituisce tutte le righe.

Type:Int64
Aliases:First
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 la versione 21). Nella versione 23+ del modulo il valore predefinito sarà "$false", che può creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ViewName

Specifica il nome della vista 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 per il cmdlet in modo che usi comunque il valore del parametro ViewName .

Type:String
Aliases:Name
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

System.String[]