## The PowerShell Script: convert-mysql2csv.ps1 This PowerShell script converts a MySQL database table to a .CSV file. ## Parameters ```powershell convert-mysql2csv.ps1 [[-server] ] [[-database] ] [[-username] ] [[-password] ] [[-query] ] [] -server Specifies the server's hostname or IP address Required? false Position? 1 Default value Accept pipeline input? false Accept wildcard characters? false -database Specifies the database name Required? false Position? 2 Default value Accept pipeline input? false Accept wildcard characters? false -username Specifies the user name Required? false Position? 3 Default value Accept pipeline input? false Accept wildcard characters? false -password Specifies the password Required? false Position? 4 Default value Accept pipeline input? false Accept wildcard characters? false -query Specifies the SQL query Required? false Position? 5 Default value Accept pipeline input? false Accept wildcard characters? false [] This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. ``` ## Example ```powershell PS> ./convert-mysql2csv ``` ## Notes Author: Markus Fleschutz | License: CC0 ## Related Links https://github.com/fleschutz/PowerShell ## Source Code ```powershell <# .SYNOPSIS Convert a MySQL database table to a .CSV file .DESCRIPTION This PowerShell script converts a MySQL database table to a .CSV file. .PARAMETER server Specifies the server's hostname or IP address .PARAMETER database Specifies the database name .PARAMETER username Specifies the user name .PARAMETER password Specifies the password .PARAMETER query Specifies the SQL query .EXAMPLE PS> ./convert-mysql2csv .LINK https://github.com/fleschutz/PowerShell .NOTES Author: Markus Fleschutz | License: CC0 #> param([string]$server = "", [string]$database = "", [string]$username = "", [string]$password = "", [string]$query = "") try { if ($server -eq "") { $server = read-host "Enter the hostname/IP address of the MySQL server" } if ($database -eq "") { $database = read-host "Enter the database name" } if ($username -eq "") { $username = read-host "Enter the database username" } if ($password -eq "") { $password = read-host "Enter the database user password" } if ($query -eq "") { $query = read-host "Enter the database query" } $csvfilepath = "$PSScriptRoot\mysql_table.csv" $result = Invoke-MySqlQuery -ConnectionString "server=$server; database=$database; user=$username; password=$password; pooling = false; convert zero datetime=True" -Sql $query -CommandTimeout 10000 $result | Export-Csv $csvfilepath -NoTypeInformation exit 0 # success } catch { "⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])" exit 1 } ``` *Generated by convert-ps2md.ps1 using the comment-based help of convert-mysql2csv.ps1*