Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

SQL-запрос


sergeyst ©   (2007-03-05 11:26:00) 

Здравствуйте.
Формирую запрос:
 with IBQList do begin
   Close;
   with SQL do begin
     Clear;
     Add('select NMK_ID, NMK_NOTE, NMK_NAME from NMK_PAR');
     Add('left join NMK on NMK.NMK_ID = NMK_PAR.NMK_ID');
     Add( 'where ( ( NMK_PAR.PAR_ID = ' +
            IntToStr( Integer( cbPar1.Items.Objects[cbPar1.ItemIndex]) ) +
            ') and  (  NMK_PAR_VALUE = '
           + edtParValue1.Text  +
          ') )' );
   end;
 Open;
Если в edtParValue введено число, то запрос выполняется нормально, а вот, если текст - unexpected end of command. Почему?


Ega23   (2007-03-05 12:59:00) [1]


> А что это?


Это своё. Но ты можешь туда что угодно дописать.


sergeyst   (2007-03-05 12:04:00) [2]


> NumsOnlyS

А что это?


sergeyst   (2007-03-05 11:59:00) [3]

Всем спасибо.


Ega23   (2007-03-05 11:33:00) [4]


> Почему?


Апострофы надо ставить. Что-то типа

Function Valx( i:Variant;d:string=''):string;//ñòðîêîâîå çíà÷.ïåðåìåííî& #233; äëÿ SQL
begin
result:='';
try
case VarType(i) of
 varEmpty,//    = $0000;
 varNull: result:='Null'+d;
 varString: result:=''''+i+''''+d ;
 varDate: begin
           DateTimeToString(result,SQLDateTimeFmt,i);
           result:=result+d ;
          end;
 varBoolean : if i then Result:='1' else Result:='0';        
 varDouble,
 varSingle: result:=NumsOnlyS(VarToStr(i)) +d;
else result:=VarToStr(i)+d;
end;//case
except
result:='';exit;
end;
end;


Desdechado   (2007-03-05 11:32:00) [5]

Потому что параметры нужно использовать.


Reindeer Moss Eater   (2007-03-05 11:28:00) [6]

Пртому что текст не терминирован ничем


Наверх

Титульная страница Поиск, карта сайта Написать письмо