Additional
dbCAP
AnyDAC
ThinDAC
NCOCI8
Topic: Баг или фича?
Баг или фича?
Posted: 2007/05/17 10:36
 
Дмитрий, добрый день.

D2007
MySQL 5.1
WinXP

Ситуация такая:

не работает: (возвращает пустой результат, ошибки не выдаёт)
SELECT CONCAT(author_type, ': ', author_family, ' ', author_initial, ' ', author_extension) as author2 FROM authors, volume2author WHERE volume2author.author_id=authors.author_id AND volume2author.volume_id='1743' AND author_type_id!=2 AND author_type_id!=1 ORDER BY author_prioritet DESC, author_family ASC

работает:
SELECT CONCAT(author_type, ': ', author_family, ' ', author_initial, ' ', author_extension) as author2 FROM authors, volume2author WHERE volume2author.author_id=authors.author_id AND volume2author.volume_id='1743' AND author_type_id not in (1,2) ORDER BY author_prioritet DESC, author_family ASC

т.е. заменяем
author_type_id!=2 AND author_type_id!=1
на
author_type_id not in (1,2)
и начинает работать

но при этом оба запроса верные и в phpMyAdmin отрабатывают на ура и работали на corelab mydac.

Баг или фича?

Post edited by: nikita, at: 2007/05/17 10:38
Re:Баг или фича?
Posted: 2007/05/17 10:44
 
Привет

Скорее баг, чем фича. Эта проблема исправлена и исправления войдут в v 2.0. Вы можете сами исправить. Для этого в модуле daADPhysCmdPreprocessor, методе TADPhysPreprocessor.ProcessMacro замените начало на:


 ..............   lIsRaw := (AFirstCh '!');   ch := GetChar;   if ch '=' then begin     // skip != and &= operators in SQL   end   else if ch AFirstCh then     Commit(-1)   else begin     if piExpandMacros in Instrs then       Commit(-2);     PutBack; ..............



Удачи,
Дмитрий
Re:Баг или фича?
Posted: 2007/05/17 10:45
 
Спасибо!