none
Powershell и выборка данных из SQL RRS feed

  • Вопрос

  • Здравствуйте! Впервые стлолкнулся и есть вопросы.Может кто сталкивался.Мне нужно сделать выборку из SQL по определенной дате.Например данные за вчера.
    $a=(Get-Date).AddDays(-1).ToString('dd.MM.yyyy')
    Invoke-Sqlcmd -database archive -Query "SELECT [Id],[Time] from [archive].[dbo].[tickets] WHERE [Time] LIKE $a;" -ServerInstance "192.168.1.100" 
    Формат даты в базах следующий 2016-04-06 10:14:25
    Мне же нужно выбрать все данные например за 2016.04.06 (время не важно).
    Не могу понять как сделать выборку именно по дню,через LIKE не получается.Может кто сталкивался?Спасибо!

Ответы

  • Попробовать:

    $a=(Get-Date).AddDays(-1).ToString('MM\/dd\/yyyy')
    Invoke-Sqlcmd -database archive -Query "SELECT [Id],[Time] from [archive].[dbo].[tickets] WHERE [Time] between '$a' and '$a 23:59:59'" -ServerInstance "192.168.1.100 

    • Помечено в качестве ответа Puz27 18 мая 2016 г. 8:50
    Отвечающий

Все ответы

  • Попробовать:

    $a=(Get-Date).AddDays(-1).ToString('MM\/dd\/yyyy')
    Invoke-Sqlcmd -database archive -Query "SELECT [Id],[Time] from [archive].[dbo].[tickets] WHERE [Time] between '$a' and '$a 23:59:59'" -ServerInstance "192.168.1.100 

    • Помечено в качестве ответа Puz27 18 мая 2016 г. 8:50
    Отвечающий
  • ААА!СпасибО!Ну вот откуда Вы все это знаете??? Получилось! Вопрос еще один.Мне теперь нужно в PowerShell Studio сделать отображение информации извлеченной из БД на определенную дату.Календарь нашел.Теперь надо привязать дату  в календаре к переменной $a. Где можно прочитать про это.Может кто скажет? СПАСИБО!!!!
  • Я не знаю про данный продукт, но полагаю, что идея проста:

    # Создается календарь
    $cal = New-Object Windows.Forms.MonthCalendar
    
    #Получаем выбранную дату
    $a = $cal.SelectionRange.Start.ToString('MM\/dd\/yyyy')


    Отвечающий
  • Спасибо! Буду пробовать!!!!
  • Еще вопрос.Может кто знает.Решил делать формы через powershell.Поискал - кое что нашел.

    Add-Type -assembly System.Windows.Forms
     
    $DateTimePicker = New-Object System.Windows.Forms.DateTimePicker
    $DateTimePicker.Location  = New-Object System.Drawing.Point(0,400)
    $main_form.Controls.add($DateTimePicker)
    
    $main_form = New-Object System.Windows.Forms.Form
    $main_form.Text ='Видемое название формы'
    $main_form.Width = 200
    $main_form.Height = 200
    $main_form.AutoSize = $true
     
    $Label = New-Object System.Windows.Forms.Label
    $Label.Text = "$a"
    $Label.Location  = New-Object System.Drawing.Point(100,10)
    $Label.AutoSize = $true
    $main_form.Controls.Add($Label)
     
    $button = New-Object System.Windows.Forms.Button
    $button.Text = 'кнопка'
    $button.Location = New-Object System.Drawing.Point(200,10)
    $main_form.Controls.Add($button)
    
    
    $TextBox = New-Object System.Windows.Forms.TextBox
    $TextBox.Location  = New-Object System.Drawing.Point(160,70)
    $TextBox.Text = "$b"
    $main_form.Controls.Add($TextBox)
    
    
    $DateTimePicker = New-Object System.Windows.Forms.DateTimePicker
    $DateTimePicker.Location  = New-Object System.Drawing.Point(0,200)
    $main_form.Controls.add($DateTimePicker)
          
       $main_form.ShowDialog()
    

    Вопрос.Мне нужно выгружать данные в таблицу.Как ее вывести?Через какой new-object завести?

    Спасибо!

  • О как здорово! Спасибо! Попробую все это придумать через  Out-GridView.Другое пока сложно для меня.СПАСИБО!!! Отпишусь.....