powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Запрос в Oracle из VB6 sp6
9 сообщений из 9, страница 1 из 1
Запрос в Oracle из VB6 sp6
    #34332003
GArold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Собственно содержимое

Dim strQuery As String

strQuery = "SELECT SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC FROM ((SMPRICES INNER JOIN SMCARD ON SMPRICES.ARTICLE = SMCARD.ARTICLE) INNER JOIN SVAARTCLASSIF ON SMPRICES.ARTICLE = SVAARTCLASSIF.ARTICLE) INNER JOIN SMGOODS ON SMPRICES.ARTICLE = SMGOODS.ARTICLE GROUP BY SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC, SMPRICES.PRICETYPE, SVAARTCLASSIF.TREE, SMGOODS.STORELOC HAVING (((SMGOODS.QUANTITY)>= 0) AND ((SMPRICES.STORELOC) Like 1) AND ((SMPRICES.PRICETYPE) Like 1) AND ((SVAARTCLASSIF.TREE) Like '69.*') AND ((SMGOODS.STORELOC) Like 2))"

Adodc1.RecordSource = strQuery

Adodc1.Refresh

повисает после запуска, содержимое таблиз из запроса огромное несколько десяток тысяч, итог запроса 100-300. думаю дело не в количесиве обрабатываемой информации, Аксеесс сделал за 2 минуты.

Может дело в том то что запрос в оракл и есть какая то специфика?? хелп мии :~(
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34332980
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расписал запрос по нотам, получился:
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC
FROM SMPRICES, SMCARD, SVAARTCLASSIF
WHERE SMPRICES.ARTICLE = SMCARD.ARTICLE
      AND SMPRICES.ARTICLE = SVAARTCLASSIF.ARTICLE
INNER JOIN SMGOODS ON SMPRICES.ARTICLE = SMGOODS.ARTICLE
GROUP BY SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC, SMPRICES.PRICETYPE, SVAARTCLASSIF.TREE, SMGOODS.STORELOC
HAVING((SMGOODS.QUANTITY >=  0 ) AND (SMPRICES.STORELOC LIKE  1 ) AND (SMPRICES.PRICETYPE LIKE  1 ) AND ((SVAARTCLASSIF.TREE) LIKE '69.*') AND ((SMGOODS.STORELOC) LIKE  2 ))
Вот. и стал пытаться понять что означают условия:
Код: plaintext
1.
2.
(SMPRICES.STORELOC LIKE  1 ) 
(SMPRICES.PRICETYPE LIKE  1 )
(SMGOODS.STORELOC) LIKE  2 )

Автор, поясните.
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34332989
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. получилось вот. :-)
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC
FROM SMPRICES, SMCARD, SVAARTCLASSIF, SMGOODS
WHERE SMPRICES.ARTICLE = SMCARD.ARTICLE
      AND SMPRICES.ARTICLE = SVAARTCLASSIF.ARTICLE
      AND SMPRICES.ARTICLE = SMGOODS.ARTICLE
GROUP BY SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC, SMPRICES.PRICETYPE, SVAARTCLASSIF.TREE, SMGOODS.STORELOC
HAVING((SMGOODS.QUANTITY >=  0 ) AND (SMPRICES.STORELOC LIKE  1 ) AND (SMPRICES.PRICETYPE LIKE  1 ) AND ((SVAARTCLASSIF.TREE) LIKE '69.*') AND ((SMGOODS.STORELOC) LIKE  2 ))
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333267
GArold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
почему виснет так и непонял, запрос то рабочий
по ВБ и Оракл нашел здесь http://]www.vb.kiev.ua/code/db/VB-MySql_I15970865.zip
правдо здесь про 8и у меня 9

у меня только вопрос по синтаксису СКЛ запроса так как запрос для оракля свой из вб тоже свой.
разница в написание небольшая но напрягает особенно с форматами ячеек для фильтра.

хе, малость поправил, хидер выдал но без данных. накидал тоже самое в аксессе все чику-пуки.
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333568
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я все правильно понял, то попробуй вот такой запрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT SMCARD.ARTICLE, SMCARD.NAME, SMPRICES.PRICE, SMGOODS.QUANTITY, SMPRICES.STORELOC
FROM SMPRICES, SMCARD, SVAARTCLASSIF, SMGOODS
WHERE SMPRICES.ARTICLE = SMCARD.ARTICLE
      AND SMPRICES.ARTICLE = SVAARTCLASSIF.ARTICLE
      AND SMPRICES.ARTICLE = SMGOODS.ARTICLE
      AND SMGOODS.QUANTITY >=  0 
      AND SMPRICES.STORELOC =  1  
      AND SMPRICES.PRICETYPE =  1  
      AND SVAARTCLASSIF.TREE LIKE '69.*'
      AND SMGOODS.STORELOC =  2 
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333728
GArold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо частично помогло, тока проблема в условии like '69.*'
точнее помойму в нем, не тот формат, как правильно в ВБ отфильторовать столбец по признаку и какой синтаксец должен быт в запросе в зависемости от формата ячейки.
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333744
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
% может это вместо * ?
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333838
GArold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОгРоМНоЕ сПоСИБо, респект и уважуха вам.
...
Рейтинг: 0 / 0
Запрос в Oracle из VB6 sp6
    #34333854
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One% может это вместо * ?
блин... я не обратил на это внимания. :-((
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Запрос в Oracle из VB6 sp6
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]