powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB и SQL
8 сообщений из 8, страница 1 из 1
VB и SQL
    #33297613
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не получается найти значение по датам и по времени вложенном в код VB запросе SQL по китериям инструмента календаря DTPicker
проблемма с типом значения поля базы (DBTimeStamp)
вот код
"WHERE ([Statistics].StartTime BETWEEN " & dstartT.Value & " AND " & dstopT.Value

__________________________
формат DTPicker ="MM.DD.YYYY hh:mm:ss"
...
Рейтинг: 0 / 0
VB и SQL
    #33297627
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какую ошибку выдает?
...
Рейтинг: 0 / 0
VB и SQL
    #33297646
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
incorrect sintax near '.2005.'
...
Рейтинг: 0 / 0
VB и SQL
    #33297715
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дата в запрос передается битая, стопудово, судя по выдаваемой ошибке.
Потерялись день и месяц, а передается только: точка(!!)-год.
Конешна, сразу синтаксическая ошибка.
...
Рейтинг: 0 / 0
VB и SQL
    #33298160
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой формат даты принят на Вашем сервере?

В таком и передавайте, не забыв с обеих сторон вкатить апострофы...
...
Рейтинг: 0 / 0
VB и SQL
    #33298509
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BETWEEN '2005-09-01' AND '2005-09-30'
т. е. yyyy-mm-dd заключенные в апострофы.
...
Рейтинг: 0 / 0
VB и SQL
    #33298642
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я использую ф-цию перевода переменных типа "Дата" в формат стандарта даты в MSSQL в модуле и проблем никогда не возникало
Код: plaintext
1.
2.
3.
Public Function Date2SQL(d As Date) As String
        'MS SQL
        Date2SQL = "'" + Format(Year(d), "0000") + Format(Month(d), "00") + Format(Day(d), "00") + "'"
End Function

и тогда строка запроса будет иметь вид

Код: plaintext
"WHERE ([Statistics].StartTime BETWEEN " & Date2SQL(dstartT.Value) & " AND " & Date2SQL(dstopT.Value)
...
Рейтинг: 0 / 0
VB и SQL
    #33299202
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKotя использую ф-цию перевода переменных типа "Дата" в формат стандарта даты в MSSQL в модуле... ...или на стороне сервера средствами T-SQL:
CONVERT (data_type[(length)], expression [, style])

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Public Function CalendarForSQL() As String
' Возвращает дату, установленную в календаре,
' в формате функции CONVERT (DATETIME, expression [, style]),
' где expression='dd.mm.yyyy 00:00:00'
'   style     = 104 = German (dd.mm.yy with Century)
'
    CalendarForSQL = _
    "CONVERT(DATETIME,'" & Format(day, "00") & "." & Format(month, "00") & "." & Format(year, "0000") & "',104)"
End Function
Тогда в строку запроса можно вставить обращение к функции:
Код: plaintext
"   WHERE [Statistics].StartTime  >=  " & frmCalendar.CalendarForSQL 
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB и SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]