cosine83

Untitled

Dec 23rd, 2013
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #Database value variables
  2. $DBNull = [System.DBNull]::Value.Equals('NULL')
  3. $DBValue = [System.DBNull]::Value.Equals('Y')
  4.  
  5. #SQL server and database to use
  6. $ServerName = "Server"
  7. $DatabaseName = "Database"
  8.  
  9. #Get previous day's date
  10. $Date = (get-date).AddDays(-1).ToShortDateString()
  11.  
  12. #Queries to run using the date retrieved from the $Date variable
  13. $Query1 = "SELECT * FROM Table(nolock) WHERE date = '$Date'"
  14. $Query2 = "proc_startover '$Date'"
  15. $Query3 = "proc_startperiod '$Date',1"
  16. $RowValue = "with Database AS(select row_number() over(order by ProcessID) as 'row', * from Table) select * from Database where row=2"
  17.  
  18. #Timeout parameters
  19. $QueryTimeout = 120
  20. $Query3Timeout = 3600
  21. $ConnectionTimeout = 30
  22.  
  23. #Action of connecting to the Database and executing the query and returning results if there were any.
  24. $conn=New-Object System.Data.SqlClient.SQLConnection
  25. $ConnectionString = "Server={0};Database={1};Integrated Security=True;Connect Timeout={2}" -f $ServerName,$DatabaseName,$ConnectionTimeout
  26. $conn.ConnectionString=$ConnectionString
  27. $conn.Open()
  28. $cmdQ1=New-Object system.Data.SqlClient.SqlCommand($Query1,$conn)
  29. $cmdQ1.CommandTimeout=$QueryTimeout
  30. $ds=New-Object system.Data.DataSet
  31. $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmdQ1)
  32. [void]$da.fill($ds)
  33. $conn.Close()
  34. $ds.Tables
  35.  if($RowValue:DBNull.Equals($DBValue))
  36. {
  37.             $conn.ConnectionString=$ConnectionString
  38.             $conn.Open()
  39.             $cmdQ2=New-Object system.Data.SqlClient.SqlCommand($Query2,$conn)
  40.             $cmdQ2.CommandTimeout=$QueryTimeout
  41.             $ds=New-Object system.Data.DataSet
  42.             $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmdQ2)
  43.             [void]$da.fill($ds)
  44.             $cmdQ2=New-Object system.Data.SqlClient.SqlCommand($Query2,$conn)
  45.             $cmdQ2.CommandTimeout=$QueryTimeout
  46.             $ds=New-Object system.Data.DataSet
  47.             $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmdQ2)
  48.             [void]$da.fill($ds)
  49.             $cmdQ3=New-Object system.Data.SqlClient.SqlCommand($Query3,$conn)
  50.             $cmdQ3.CommandTimeout=$Query3Timeout
  51.             $ds=New-Object system.Data.DataSet
  52.             $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmdQ3)
  53.             [void]$da.fill($ds)
  54.             $cmdQ1=New-Object system.Data.SqlClient.SqlCommand($Query1,$conn)
  55.             $cmdQ1.CommandTimeout=$QueryTimeout
  56.             $ds=New-Object system.Data.DataSet
  57.             $da=New-Object system.Data.SqlClient.SqlDataAdapter($cmdQ1)
  58.             [void]$da.fill($ds)
  59.             $conn.Close()
  60.             $ds.Tables | Export-Csv C:\Scripts\PowerShell\SQL\DB.csv
  61.             Write-Host "Please check the Scripts folder for the results of this script."
  62. }
  63. else($RowValue:DBNull.Equals($DBNull))
  64. {
  65.             Write-Host "The database values are fine, please call the help desk for further assistance with troubleshooting the issue."
  66. }
Advertisement
Add Comment
Please, Sign In to add comment