Текущее время: Чт, мар 28 2024, 21:04

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Произвольный SQL запрос?
СообщениеДобавлено: Вс, апр 07 2013, 08:36 
Начинающий
Начинающий

Зарегистрирован:
Пт, фев 01 2013, 18:58
Сообщения: 4
Мне не понятно как запустить произвольный SQL запрос, заданный текстовой строкой, на базе данных устройства. В среде Unwired platform 2.1.3.
Существующие варианты не удовлетворяют наши потребности:
Возможность конструирования запроса составными частями, но при этом нельзя выполнить вычисления в части select.
Возможность выполнения строковых запросов, но при этом необходимо, чтобы возврат строго соответствовал одному из MBO существующих объектов.


В документации описан только такой способ приближенный к динамическим запросам:
Query query = new Query();
query.select("x.fname, x.lname, x.surrogateKey, x.id, x.company_name");
query.from("Customer", "x");
....
QueryResultSet rs = SUP101DB.executeQuery(query);

запуск произвольного текстового СКЛ я нашел в сгенерированном коде в виде (немного порезанный вид) :
com.sup101.android.mbo.intrnl.CustomerMetaData META_DATA = new com.sup101.android.mbo.intrnl.CustomerMetaData();
com.sybase.sup.client.persistence.EntityDelegate DELEGATE = com.sybase.sup.client.persistence.DelegateFactory.createEntityDelegate("Customer", com.sup101.android.mbo.Customer.class, "SUP101.Customer", META_DATA, com.sup101.android.mbo.SUP101DB.getDelegate());
String _selectSQL = "SELECT x.a .... FROM sup101_1_0_customer x WHERE ... AND x.a = ?";
....
com.sup101.android.mbo.Customer customer = (com.sup101.android.mbo.Customer) DELEGATE.findWithSQL(_selectSQL, dts, values, ids, com.sup101.android.mbo.Customer.class);

то есть можно выполнить запрос но строго в терминах MBO. Попытки изменить число колонок приводят к Exception.



Чтобы было понятно что мне требуется, проще всего представить что мне надо выполнить текстовой запрос вида:
String mySQL = "SELECT 2+2, id*99 FROM customer WHERE 2>1 AND id<99999";
QueryResultSet rs = ?????????

Как мне его выполнить?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Произвольный SQL запрос?
СообщениеДобавлено: Пн, апр 22 2013, 10:33 
Начинающий
Начинающий

Зарегистрирован:
Вт, ноя 27 2012, 16:46
Сообщения: 20
ну вообще можно попробовать взять мобильный бизнес объект, перейти на закладку object queries.
Там нажать сгенерировать запрос, а потом в поле query definition вписать что хотите. Поставить return result set, чтобы на возвращаемую струткуру жестко не завязываться и вперед.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB