etc~ scripts and random things |
| git clone https://github.com/djnnvx/etc.git |
| log | files | refs | archive |
sql.ps1 (1352B)
1 function Run-SQL 2 { 3 param ( 4 [Parameter(Mandatory=$true)] 5 [string]$instance, 6 7 [Parameter(Mandatory=$true)] 8 [string]$query, 9 10 [Parameter(Mandatory=$false)] 11 [string]$username, 12 13 [Parameter(Mandatory=$false)] 14 [string]$password 15 ) 16 17 try { 18 $connectionString = "Server=$instance;" 19 20 if ($PSCmdlet.MyInvocation.BoundParameters.ContainsKey('username')) { 21 $credential = New-Object System.Data.SqlClient.SqlCredential($username, $password | ConvertTo-SecureString -AsPlainText -Force) 22 $connection = New-Object System.Data.SqlClient.SqlConnection($connectionString) 23 $connection.Credential = $credential 24 } 25 else { 26 $connectionString += "Integrated Security=True;" 27 $connection = New-Object System.Data.SqlClient.SqlConnection($connectionString) 28 } 29 30 using ($connection) { 31 $connection.Open() 32 $command = $connection.CreateCommand() 33 $command.CommandText = $query 34 35 $dataTable = New-Object System.Data.DataTable 36 $dataTable.Load($command.ExecuteReader()) 37 38 return $dataTable 39 } 40 } 41 catch { 42 Write-Error "An error occurred while executing the SQL query: $($_.Exception.Message)" 43 return $null 44 } 45 }