|
|
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Работаю над ADP (&MSSQL2000). Клиентское подключение естественно через OLE DB. !!! В настройках клиентская части стоит "использование нац-х настроек" Самый прикол вот в чем: 1)Когда я из формы пишу: Dim rst As ADODB.Recordset Dim strSQL As String .... strSQL = "select ... where DateR>'25/04/03' " ---- То все выполняется ок. Тк дата интерпретируется в формате dmy (видно в Profiler, что в запрос вставляется "set dateformat dmy ... тк установлены нац-е настройки) 2) На другой форме у меня диаграмма (Объект OLE - MSGraph) strSQL = "select ... where DateR>'25/04/03' " OLE1.RowSource = strSQL ---- При выполнении выдает ошибку! "The conversion of char data type to smalldatetime data type resulted in an out-of-range smalldatetime value." Тк дата интерпретируется в формате mdy (видно в Profiler, что в запрос идет без set dateformat dmy) ..... ЧТО ДЕЛАТЬ??? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 07:43 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
В командах SQL стандартный формат дат - #MM/DD/YYYY# - именно так, в таком порядке и с такими символами. От настроек Windows он не зависит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 09:48 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Вопрос то вдругом. В 1-м случае в пакет вставляется 'set dateformat dmy', а во 2-м этого нет. И, соответственно, один и тот же запрос, то работает, то нет!!! P.S. Если стандартный формат #MM/DD/YY#, почему тогда "select .... where DateR=#04/12/2003#" из QA выдает "Line 1: Incorrect syntax near '04'." Какие настройки у меня не верные? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:14 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
>В 1-м случае в пакет вставляется 'set dateformat dmy', а во 2-м этого нет. Может быть MSGraph использует для связи с сервером не ОЛЕ ДБ, а ОДБЦ. Не мучайтесь, сделайте как, Владимр Саныч прописал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:23 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Viktor, не получается ведь так, как я прописал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:35 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
1) Если стандартный формат #MM/DD/YY#, почему тогда "select .... where DateR=#04/12/2003#" из QA выдает "Line 1: Incorrect syntax near '04'." 2) А как проверить, что использует MSGraph для связи, яж это явно нигде не указывал??? 3) Я в запросах от клиента замени все на "select .... where DateR=#04/12/2003#" а ошибку из п.1 так и выдает.... :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:36 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Если мне не изменяет мой скалероз, то ограничивать дату решетками надо для Jet'овского SQL. В MS SQL вроде по другому? Или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:38 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Что-то вы все запутали-напутали и с вами заодно. В SQL "#" является служебным и иcпользуется для обозначения временных таблиц. Дату надо передавать. как Владимир Саныч сказал в формате mm/dd/yyyy (кстати, можно в родном для ОДБЦ yyyymmdd), но только в апостофах . select .... where DateR='04/30/2003' - Для MS SQL select .... where DateR=#04/30/2003# - Для MS Access (Ansi SQL89) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:42 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:45 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
примерчик Dim rst As ADODB.Recordset Set rst = New ADODB.Recordset rst.Open "SELECT [Код накладной] FROM dbo.[Накладные расхода] WHERE Дата = '" & forms![Расход]![Начальная дата данных] & "'", CurrentProject.Connection MsgBox rst![Код накладной] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:50 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Вот блин, не получилось, еще раз http://www.sql.ru/faq/faq_topic.aspx?fid=103 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:50 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
мой работающий примерчик для adp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:58 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Вопрос теперь. В 1-м случае в пакет вставляется 'set dateformat dmy', а во 2-м этого нет. И, соответственно, один и тот же запрос, то работает, то нет!!! ... Нужно чтобы и там и там.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 10:59 |
|
||
|
ADP (& MSSQL2000) Проблемы с форматом дат в разных формах!
|
|||
|---|---|---|---|
|
#18+
Такое впечатление, что BOL никто не читает. И не забывайте, что кроме языковых настроек на клиенте, есть языковые настройки на сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2003, 11:47 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1798&tid=1681331]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
5ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 205ms |
| total: | 333ms |

| 0 / 0 |
