Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос в Visual Basic... / 13 сообщений из 13, страница 1 из 1
17.03.2005, 11:24:19
    #32965328
ElektriK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
Через DataEnviroment делаю Connection с базой написанной в Акцесс2000. Через Command представляющую собой SQL запрос пытаюсь получить данные и вписать в DataGrid. В запросе фигурирует условие для отбора данных: например получить данные за 2004 год. Но поскольку годы меняются то вместо 2004 нужно также 2005 и тд. Иными словами условие меняется. Всвязи с этим вопрос: можно ли в запрос засунуть некую переменную значение которой берется например из КомбоБокса. Те можно было бы менять условие запроса непосредственно из программы. Да чуть не забыл, програмно это все понятно как сделать, а как это можно сделать через конструктор SQL запросов в VB?


С уважением Андрей.
...
Рейтинг: 0 / 0
17.03.2005, 12:27:47
    #32965564
Vitaly Vengrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
в запросе пишеш что то типа " ..where year =year .."
и создаеш на закладке parameters параметр year

а при открытии набора передавай ему значение параметра. Например (выдрал у себя) :
Код: plaintext
1.
2.
3.
4.
5.
6.
'текст SQL объекта HistCur
"SELECT * FROM HISTORY_CURRENCY
WHERE HISTORY_CURRENCY.CURRENCY_ID = pCurID 
ORDER BY HISTORY_CURRENCY.DATE"

'вызов
DE.HistCur CInt(frmCurrency.ctlID.Text)
...
Рейтинг: 0 / 0
17.03.2005, 14:33:13
    #32965982
_bob
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
а можно спросить ЗАЧЕМ делать через задний проход, если вс можно сделать вполне вменяемо в коде?
лично у меня работа с DataEnvironment вызывает самые негативные эмоции
------------------
arbeit macht frei
...
Рейтинг: 0 / 0
17.03.2005, 18:49:33
    #32966810
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
По моему Jet не поймет именованный параметр.
Надо в колонке criteria поставить =?
в нужной строчке.
Если параметров несколько, то вписывать их в порядке следования.
код вызова примерно такой: (поправлю Vitaly Vengrov)
Код: plaintext
1.
if DE.rsHistCur.state = adstateopen then DE.rsHistCur.close
DE.HistCur CInt(frmCurrency.ctlID.Text)

bob-у:
использование такого мощного средства как DataEnvironment не есть то чего надо стыдиться.
тем более, что нельзя сдать, например, MCSD 70-175 без знаний DE и без умения использовать его в ООП.
Лично я был удивлен, когда увидел, что DE кое в чем превосходит довольно известные броузеры для Oracle несмотря на свой почтенный возраст.
...
Рейтинг: 0 / 0
17.03.2005, 21:12:03
    #32967021
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
Согласен с _bob в вопросе ДЕ. Вещь довольно глючная и весьма громоздкая. Практически не вижу выгод от его использования. Наличие же вопросов по энтой фиче в тестах - не показатель. Я его сдал с результатом 928, архитектура ДЕ не есть нечто сложное для понимания, просто наборы рекордсетов, связанных команд... При этом в своих проэктах я его не использовал, приходилось лишь пару раз работать по подержке старых проэктов содержавших сей девайс.

ЗЫ.Не стреляйте из пушки по воробьям.

Magnus
...
Рейтинг: 0 / 0
18.03.2005, 09:13:23
    #32967343
MrDDT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
А почему нельзя так: "SELECT * FROM Table1 WHERE Year = " & 2005 ???..
...
Рейтинг: 0 / 0
18.03.2005, 10:32:18
    #32967527
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
ElektriK.... Да чуть не забыл, програмно это все понятно как сделать, а как это можно сделать через конструктор SQL запросов в VB?
...
Рейтинг: 0 / 0
18.03.2005, 17:01:37
    #32968852
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
Magnus23ЗЫ.Не стреляйте из пушки по воробьям.

Magnus
DataEnvironment - MSDERUN.DLL весит 133 кб.
а наборчик контролов MSCOMCTL.OCX - 1057 кб.
Не хочу Никого обругать,
просто не надо клевать тех кто пользуется графическими средствами для построения и изучения запросов.
В конце концов мы живем в 21 веке и заставлять люде писать
CREATE TABLE TABLE1 (ПОЛЕ1 VARCHAR2 (64) NOT NULL, . . .
. . .
ALTER TABLE "TABLE1"
ADD CONSTRAINT . . .

- не самый лучший способ обучения программированию.

Сам я использую DE как средство для создания структуры таблиц и т.п.
Вполне заменяет "бесплатные" броузеры данных.
Хотя от использования в программах отошел, т.к DE - препятствие для совместной разработки.
...
Рейтинг: 0 / 0
21.03.2005, 08:20:19
    #32970458
SQL запрос в Visual Basic...
MrDDTА почему нельзя так: "SELECT * FROM Table1 WHERE Year = " & 2005 ???..

Я тоже так думаю
...
Рейтинг: 0 / 0
21.03.2005, 08:21:19
    #32970460
SQL запрос в Visual Basic...
ElektriKЧерез DataEnviroment делаю Connection с базой написанной в Акцесс2000. Через Command представляющую собой SQL запрос пытаюсь получить данные и вписать в DataGrid. В запросе фигурирует условие для отбора данных: например получить данные за 2004 год. Но поскольку годы меняются то вместо 2004 нужно также 2005 и тд. Иными словами условие меняется. Всвязи с этим вопрос: можно ли в запрос засунуть некую переменную значение которой берется например из КомбоБокса. Те можно было бы менять условие запроса непосредственно из программы. Да чуть не забыл, програмно это все понятно как сделать, а как это можно сделать через конструктор SQL запросов в VB?


С уважением Андрей.

ещё вариант, делаешь запрос в SQLе и копируешь его в VB !!! он всё понимает!!!
...
Рейтинг: 0 / 0
21.03.2005, 10:36:55
    #32970651
Vitaly Vengrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
Валерий_26RUSещё вариант, делаешь запрос в SQLе и копируешь его в VB !!! он всё понимает!!!
Да что Вы все со своими вариантами, предложениями, непонятками.
Вам же сказали : "..Как программно сделать знаю...".
Если человек задает конкретный вопрос - значит и ответ должен быть конкретным. И не надо разводить философий - что хорошо а что нет.

P.S. Прошу на это письмо не отвечать - просто закроем тему.. :)
...
Рейтинг: 0 / 0
21.03.2005, 15:34:57
    #32971566
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
2 Worobjoff
Использование ДЕ можно было бы считать целесообразным при необходимости работы с несколькими разными источниками деанных/команбдами/соеденениями/базами(нужное подчеркнуть) на одной форме, т.е. дабы воспользоваться его "преимуществами" - встроеными коллекциями обьектов и упорядочить/организовать свои обьекты.

Если же используется пара рекордсетов/комманд на том же самом соеденении то не вижу смысла огород городить. Гораздо логичнее в этом случае просто создать рекордсет и обращатся к нему. Код будет почти тот же но более легкий.

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


Worobjoff- не самый лучший способ обучения программированию.
Нет уж позвольте! :). Как раз для обучения и нужно заставлять, ибо в дальнейшем это избавит от кучи проблем и недоразумений вызванных не достаточным пониманием последствий своих действий. А уж потом можно и в конструкторах если кажется что так будет быстрее/лучше/удобнее.

А если уж долшло до необходимости манипуляций со структурой базы то считаю, тут просто необходимо понимать что именно происходит и не лучше ли для построения структуры таблиц использовать нативные стредства Ацеса/сиквела?

Magnus
...
Рейтинг: 0 / 0
21.03.2005, 18:19:02
    #32972114
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL запрос в Visual Basic...
Кажется я натыкался на один из глюков, приписываемый DE.
DataSource в UserControl-ах часто глючит. DE глюки "находит" сразу, и бывает, нельзя вообще форму загрузить в дизайнере.
Но и когда нет ДЕ в проекте, форма все равно сваливается в Run-Time унося вместе с собой на тот свет всю среду разработки.
По-моему это все же НЕ DE-шный глюк, а что то из Microsoft Data Source Interfaces.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос в Visual Basic... / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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