Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Вниз

помогите с sql   Найти похожие ветки 

 
viper03 ©   (2006-11-02 05:05) [0]

пытаюсь написать запрос:
("Select * ");
("From sc316 T, rg631 R");
("Where (r.sp625>0) and (t.id=r.sp622) and (R.period="01.11.2006")");
                                                                   ^----- вот здесь ругается Operator/operand type mismatch.
поле period имеет тип "Дата".  
в чем ошибка?


 
viper03 ©   (2006-11-02 06:47) [1]

сделал через параметр - работает.
А если явно указать - несоответствие типов. почему?


 
Loginov Dmitry ©   (2006-11-02 07:35) [2]

А если полностью написать:
R.period="01.11.2006 00:00:00" че будет?
Тоже самое?
:)


 
pavel_guzhanov ©   (2006-11-02 08:44) [3]


> А если явно указать - несоответствие типов. почему?


Потому что ты значение поля с типом Date пытаешься сравнить со строкой


 
Percent   (2006-11-02 08:58) [4]

Не указана СУБД.

сделал через параметр - работает.

Параметры для этого и предназначены. Используй параметры. Использование строчного представления даты - только тогда, когда ты четко понимаешь, зачем это надо.

Потому что ты значение поля с типом Date пытаешься сравнить со строкой

Если дату предоставить во вменяемом строчном формате, СУБД сама преобразует строку в дату. Большинство СУБД используют системные настройки формата даты. В вопросе автора, скорее всего, формат даты не соответствует локальному формату, поэтому СУБД и ругается на "несоответствие типов" - она (СУБД) просто не понимает, что ей передана передана, типа, дата в строчном формате.

А мне вот любопытно, sc316, rg631, sp625, sp622 - это что, такого добра (таблиц и полей в них) в БД - сотни?


 
viper03 ©   (2006-11-02 12:43) [5]

работаю через АДО.
субд - видимо фокспро. потому как пришлось специально драйвер качать.
вот в каком формате дата хранится...
если смотреть ДБВьювером - 01.11.2006
если просто фарменеджером - 20061101
если честно - я все перепробовал. на все ругается несоответствие типов.

база адинэсовская... таблиц таб действительно пара сотен. А имена полям адинэс присваивает.


 
Percent   (2006-11-02 12:46) [6]

база адинэсовская... таблиц таб действительно пара сотен. А имена полям адинэс присваивает.

Мой тебе совет - не работай с БД 1С напрямую.


 
viper03 ©   (2006-11-02 12:55) [7]

:-) я начальству еще лучший совет давал - вообще не работать с 1с. не поверили... :-(
может и второй совет дашь? как с 1с работать?


 
Desdechado ©   (2006-11-02 12:57) [8]

> вот в каком формате дата хранится...
> если смотреть ДБВьювером - 01.11.2006
> если просто фарменеджером - 20061101
Дата может храниться в каком угодно виде, хоть в количестве секунд от рождества Билла или Ларри. И смотрелки тебе этого не покажут, ибо они показывают в формате, ими любимом.
Так что используй параметры,  их для того и придумали.

> Большинство СУБД используют системные настройки формата даты.
Вот только часто остается за кадром вопрос, какой именно системы - ОС клиента или ОС сервера. Драйвер на клиенте может преобразовать, а может и отдать на откуп СУБД в исходном виде. И если форматы дат на клиенте и сервере разные, то будет бумс (причем либо явная ошибка, либо "тихая" - 01.10.2005 можно яноварем и октябрем датировать). Я уж не говорю, что возможна попытка учета часовых поясов и их разницы между клиентской и серверной машинами.


 
Percent   (2006-11-02 12:58) [9]

может и второй совет дашь? как с 1с работать?

Если мне не изменяет память, 1С может работать в качестве OLE-сервера.


 
viper03 ©   (2006-11-02 13:01) [10]

может. пробовал. но когда простенький запрос выполняется порядка 15-20 секунд - это уже не смешно.


 
Anatoly Podgoretsky ©   (2006-11-02 13:28) [11]

> viper03  (02.11.2006 13:01:10)  [10]

Уменьше размеры таблиц до нескольких десятков



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.042 c
1-1160577324
DelphiLexx
2006-10-11 18:35
2006.11.19
MDI и TTBToolBar


2-1162516767
0315
2006-11-03 04:19
2006.11.19
Обработчик сообщения WM_PAINT не срабатывает для PageControl


9-1137507692
kavis
2006-01-17 17:21
2006.11.19
адресный регистр


15-1162052130
TUser
2006-10-28 20:15
2006.11.19
Клавиатура ноутбука


15-1162188972
Cyrax
2006-10-30 09:16
2006.11.19
Lingvo-перевод на осевом уровне





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский