Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2018, 15:34   #1
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 180
По умолчанию ошибка

подскажите пожалуйста, никак не могу понять, где ошибка:
прописываю такой запрос в delphi:
Код:
With StandQuery do
  begin
  Close;
  SQL.Clear;
  SQL.Add(' Stand.*, Gost.Gost_ID AS GostID, Gost.Name AS GostName, ');
  SQL.Add('Okp.Okp_ID AS OkpID,Okp.Klass,Okp.Naim FROM Stand, Gost, Okp ');
  SQL.Add('WHERE Stand.Gost_Id=Gost.Gost_Id AND Stand.Okp_Id=Okp.Okp_Id ');
  SQL.Add('Order by case patindex (''%м[0-9]%'',Stand.Mark ) When 0 Then Mark ');
  SQL.Add('else left(Stand.Mark ,patindex (''%м[0-9]%'',Stand.Mark )-1) end , ');
  SQL.Add('case patindex (''%м[0-9]%'',Stand.Mark ) When 0 then 0 ');
  SQL.Add('else cast (substring(Stand.Mark ,patindex (''%м[0-9]%'',Stand.Mark )+1, ');
  SQL.Add('case patindex (''%[^0-9]%'',substring(Stand.Mark ,patindex (''%м[0-9]%'',Stand.Mark )+1,1000)) When 0 Then 1000 ');
  SQL.Add('else patindex (''%[^0-9]%'',substring(Stand.Mark ,patindex (''%м[0-9]%'',Stand.Mark )+2,1000)) end) as int) end ');
  Open;
  end;
в SQL запрос аналогичный. в базе он отрабатывает как надо.
но в delphi ошибка: неправильный синтаксис около ключевого слова else. что не так? никак не пойму...
Etsareva вне форума Ответить с цитированием
Старый 23.03.2018, 15:41   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

а где select?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 23.03.2018, 15:52   #3
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 180
По умолчанию

select уже добавила. но не в этом ошибка....
Etsareva вне форума Ответить с цитированием
Старый 23.03.2018, 16:15   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
в SQL запрос аналогичный
Ни капли. end еще забыла после второго case
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 23.03.2018, 16:26   #5
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 180
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
nd еще забыла после второго case
endов хватает
Etsareva вне форума Ответить с цитированием
Старый 23.03.2018, 16:39   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Ага, не досмотрел. А в сообщении об ошибке больше ни чего? И что за компонент StandQuery? Кинул в сиквел - тоже по синтаксису нет проблем
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 23.03.2018, 16:41   #7
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 180
По умолчанию

в сообщении больше нет ничего. это TADOQuery - связь с БД
Etsareva вне форума Ответить с цитированием
Старый 23.03.2018, 16:42   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А провайдер какой? Может у него крышу рвет от этого order

Если что сделай запрос без order, а его выражения в качестве вычисляемых полей сделай. Поэтом это все вложенным запросом в другой запрос и там уже order по полям снаружи
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 23.03.2018 в 16:49.
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[РЕШЕНО] Помогите в чем может быть ошибка? Ошибка ';' expected but 'BEGIN' found АлександрDelphi Общие вопросы Delphi 7 06.03.2016 19:25
Java. Ошибка. Компилируется, но не запускается. Ошибка duplicate class. Проблема не в коде. nevender Общие вопросы по Java, Java SE, Kotlin 2 13.02.2016 13:24
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? ArchiCurtis Помощь студентам 2 07.04.2012 14:16
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58