Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / дата в запросе для MSSQL / 8 сообщений из 8, страница 1 из 1
30.01.2008, 14:37
    #35097706
saley
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
Доброго всем дня помогите пожалуйста в чём причина не пойму вот запрос
select id_us from op where datez = '2008/1/23' and NumbOtch = '131-дс' and Famil = 'ААА'
ругается на дату пишет out of range
что тока не пробывал
datez = '2008123' ругается
datez = '1232008' ругается
не пойму в чём дело, подскажите пожалуйста
...
Рейтинг: 0 / 0
30.01.2008, 14:48
    #35097750
saley
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
Еще на форуме предлагали сделать str = Format(dt, "YYYY\/MM\/DD") делал тоже ругается
...
Рейтинг: 0 / 0
30.01.2008, 14:58
    #35097781
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
Для MSSQL "родной" формат даты YYYYMMDD.
Поэтому
автор
'2008/1/23'
'2008123'
'1232008'

неверно.
Вам нужно написать так
select id_us from op where datez = '20080123' and NumbOtch = '131-дс' and Famil = 'ААА'

авторЕще на форуме предлагали сделать str = Format(dt, "YYYY\/MM\/DD") делал тоже ругается
Лучше так
Код: plaintext
1.
str = Format(dt, "YYYYMMDD")
Я для этой цели написал такую функцию
Код: plaintext
1.
2.
3.
4.
5.
6.
Public Function YMDS(ByVal p_Date As Date) As String
        YMDS = Sufix(Format(p_Date, "yyyyMMdd"))
    End Function
Public Function Sufix(ByVal p_Value As String) As String
        Return Chr( 39 ) & p_Value & Chr( 39 )
    End Function
И в запросе сразу указываю YMDS(dt).
НО. И большое НО.
Предпочтительней использовать параметризованные запросы.
...
Рейтинг: 0 / 0
30.01.2008, 15:10
    #35097823
saley
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
спасибо а подскажите где посмотреть как писать параметризированый запрос, на С шарпе знаю как делать такой запрос а вот VB не знаю
...
Рейтинг: 0 / 0
30.01.2008, 15:55
    #35098009
saley
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
Сделал как сказали всё равно ругается
...
Рейтинг: 0 / 0
30.01.2008, 16:15
    #35098085
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
saleyСделал как сказали всё равно ругается
так попробуй
Код: plaintext
datez =CONVERT(DATETIME, ' 2008 - 01 - 23 ' , 102 )
может ошибка не в дате??
...
Рейтинг: 0 / 0
30.01.2008, 16:53
    #35098239
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
saleyспасибо а подскажите где посмотреть как писать параметризированый запрос, на С шарпе знаю как делать такой запрос а вот VB не знаю
Объект Command, коллекция Parameters.
авторСделал как сказали всё равно ругается

Покажите строку запроса. Как ругается ?
Вот такой запрос
select id_us from op where datez = '20080123' and NumbOtch = '131-дс' and Famil = 'ААА' работает ?
...
Рейтинг: 0 / 0
30.01.2008, 17:20
    #35098361
saley
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
дата в запросе для MSSQL
Покопался в мсдн нашёл пример разобрался с параметрами.
всё работает. спасибо
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / дата в запросе для MSSQL / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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