PowerShell/Docs/list-sql-tables.md
2022-11-17 20:02:26 +01:00

2.6 KiB

The list-sql-tables.ps1 PowerShell Script

This PowerShell script lists all tables in a SQL server database and exports the list as CSV. Install-Module InvokeQuery Run the above command if you do not have this module.

Parameters

list-sql-tables.ps1 [-server] <Object> [-database] <Object> [-username] <Object> [-password] <Object> [<CommonParameters>]

-server <Object>
    
    Required?                    true
    Position?                    1
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

-database <Object>
    
    Required?                    true
    Position?                    2
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

-username <Object>
    
    Required?                    true
    Position?                    3
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

-password <Object>
    
    Required?                    true
    Position?                    4
    Default value                
    Accept pipeline input?       false
    Accept wildcard characters?  false

[<CommonParameters>]
    This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, 
    WarningVariable, OutBuffer, PipelineVariable, and OutVariable.

Example

PS> ./list-sql-tables

Notes

Author: Markus Fleschutz | License: CC0

https://github.com/fleschutz/PowerShell

Source Code

<# .SYNOPSIS Lists all tables of a SQL server database .DESCRIPTION This PowerShell script lists all tables in a SQL server database and exports the list as CSV. Install-Module InvokeQuery Run the above command if you do not have this module. .EXAMPLE PS> ./list-sql-tables .LINK https://github.com/fleschutz/PowerShell .NOTES Author: Markus Fleschutz | License: CC0 #>

param( [Parameter(Mandatory=$true)]$server, [Parameter(Mandatory=$true)]$database, [Parameter(Mandatory=$true)]$username, [Parameter(Mandatory=$true)]$password ) $secpasswd = ConvertTo-SecureString $password -AsPlainText -Force $creds = New-Object System.Management.Automation.PSCredential ($username, $secpasswd) $csvfilepath = "$PSScriptRoot\sqlserver_tables.csv" $result = Invoke-SqlServerQuery -Credential $creds -ConnectionTimeout 10000 -Database $database -Server $server -Sql "SELECT TABLE_NAME FROM $database.INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE'" -CommandTimeout 10000 $result | Export-Csv $csvfilepath -NoTypeInformation

Generated by convert-ps2md.ps1 using the comment-based help of list-sql-tables.ps1