|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.12.2009, 07:29 | #1 |
Форумчанин
Регистрация: 02.04.2009
Сообщений: 235
|
Создание запроса в БД
Доброго времени суток. Хочу узнать как надо составить запрос в технологии ADO и в BDE по возможности? База данных уже есть. Но никак не пойму как нужно правильно оформить свойства и события. С самим sql языком знаком. Но вот само оформление в среде никак не достану мозгами. Спасибо!
Всё гениальное - просто!
|
02.12.2009, 07:36 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Мда... Надо открывать курсы телепатов с такими вопросами...
Сам то понял что спросил? Технология ADO не обязательно представляет компоненты. Есть и бескомпонентные варианты доступа к БД. В твоем случае видимо имеется ввиду настройка Делфовых компонент. Для АДО это если брать по минимуму, кидаешь на форму TADOQuery В его ConnectionString кликаешь ( в инспекторе всмысле) по кнопке, настраивая доступ (Указываешь провайдер, машину или файл подключения). А далее пишешь в свойство SQL.Text текст запроса и если он что-то возвращает вызываешь заклинание Оpen. Если запрос просто выполняет без возвращения набора то ExecSQL;
I'm learning to live...
|
02.12.2009, 15:27 | #3 | |
Форумчанин
Регистрация: 02.04.2009
Сообщений: 235
|
Извиняюсь, что не до конца объяснил что мне нужно получить.
Цитата:
Помогите кто чем может, я кинул на форму ADOQuery компонент, в св-ве SQL написал запрос, как мне теперь получить результат? Вот собственно сам запрос, решил начать с лёгкого: Код:
Всё гениальное - просто!
Последний раз редактировалось Stilet; 04.12.2009 в 16:57. |
|
03.12.2009, 23:10 | #4 |
Форумчанин
Регистрация: 07.11.2009
Сообщений: 118
|
DataSource2.DataSet:=Query1;
DBGrid2.DataSource:=DataSource2; В этом примере я использовал компонент квери, если честно незнаю насколько он эдентичен Адо квери, но чтобы вывести запрос я поступил следующим образом. Кинул ещё один датасурс и добавил табличку. Запрос идёт в компонент квери 1, результат запроса переходит в датасурс2(т.к в датасурс 1 находится сама база, не хотел убирать её с экрана), а из датасурс выводится в другую таблицу.
Если всё откладывать на потом, то потом будет всё.
|
04.12.2009, 14:10 | #5 |
Форумчанин
Регистрация: 02.04.2009
Сообщений: 235
|
Спс за совет, сработало. А какой мне оператор надо использовать в запросе, если я хочу взять отдельные определённые поля? Я пробовал через " (кавычки), как привык в Access, но мне выдаётся ошибка.
Всё гениальное - просто!
|
04.12.2009, 14:30 | #6 |
Форумчанин
Регистрация: 01.02.2007
Сообщений: 785
|
ADO - для бд без пароля. Вобщем, читай, рассказываю основы работы кратенько
1) Создаешь бд Access. И кидаешь эту бд в папку, где будешь писать программу. Называешь ее bd_my.mdb 2) Кидаешь на форму ADOConnection. Выбираешь в инспекторе объектов свойство ConnectionString и нажимаешь на три точки. 2.1) Появилось окошко. Должно быть выбрано: Use Connection String - Нажимаешь Build 2.2) Появляется список - Выбираешь Microsoft.Jet.OLEDB.4.0 и нажимаешь далее. 2.3) Теперь указываешь путь к бд - нажимаешь три точки и в обзоре находишь свою бд. 2.4) Нажимаешь Проверить подключение. Должно быть ОК. 2.5) Нажимаешь во всех окшках ОК. У меня получилось три раза нажимать нужно ОК. 2.6) Теперь у тебя в свойстве ConnectionString получилась длинная строка. Скопируй ее полностью. Создай обработчик OnCreate для формы, где мы изменим немного нашу строку подключения. Код:
И измени свойство LoginPrompt на false Что изменили в строке подключения? Да просто удалили длинный путь к бд - оставили путь, который отсчитывается от местоположения самой программы. Это удобно для переносимости приложения с бд. 3) Кидай на форму компонент ADOQuery. Назовем его ADOQ1. Через инспектор объектов в свойстве Connection выбираешь наш ADOC. 3.1) Кидаешь на форму кнопку. Создаешь к ней обработчик события OnClick: Код:
3.2) Таблица создана. Теперь ее заполним. Кидаешь на форму Edit, Memo и Button еще одну. 3.3.) Создаем обработчик OnClick для нашей новой кнопки. Код:
Можешь открыть Access и проверить таблички - должны быть данные внесены. 3.4) Теперь отобразим данные из таблицы. Кидаешь на форму еще Memo, Button и Edit. В Edit2 будем вводить номер вопроса, текст которого хотим отобразить. В Memo2 - сам текст вопроса будем отображать. 3.5) Создаем обработчик OnClick для нашей новой кнопки. : Код:
Изо всей благодати
В руках крепко сжатых Я донесу только капли |
04.12.2009, 14:31 | #7 |
Форумчанин
Регистрация: 01.02.2007
Сообщений: 785
|
3.5) Кидаешь на форму DBMemo (панель DataControls) и DataSource (панель DataAccess).
3.6) У DataSource есть свойство инспекторе - DataSet - в этом свойстве выбираешь наш ADOQ. У DBMemo есть свойство в инспекторе DataSource - выбираешь в нем наш DataSource. Теперь немного дополним обработчик события для нашей последней кнопки: Код:
а) Создать табличку кнопкой. б) Добавить несколько записей - причем число в Edit1 должно быть при каждом добавлении разным - так как добавляем-то в ключевое поле. в) Ввести в Edit2 номер вопроса и нажать Button3 - отобразить запись с ID_Q = номеру в нашем Edit2 Все. Надеюсь, что прояснил ситуацию. Будут вопросы - спрашивай. Это только краткие основы работы с ADO из Делфи.
Изо всей благодати
В руках крепко сжатых Я донесу только капли Последний раз редактировалось Roof; 04.12.2009 в 14:52. |
04.12.2009, 16:10 | #8 |
Форумчанин
Регистрация: 02.04.2009
Сообщений: 235
|
Спасибо за ответ. То, что хотел - получил.
Всё гениальное - просто!
|
04.12.2009, 16:12 | #9 |
Форумчанин
Регистрация: 01.02.2007
Сообщений: 785
|
Наздоровье
Изо всей благодати
В руках крепко сжатых Я донесу только капли |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание Веб-запроса | АлёнаP | Microsoft Office Excel | 4 | 26.11.2010 17:47 |
Создание Запроса, (Объединение) | chugo | Microsoft Office Access | 4 | 13.11.2009 21:12 |
Создание Сложного запроса | chugo | Microsoft Office Access | 3 | 13.11.2009 15:28 |
Создание запроса | gfadssa11 | Microsoft Office Access | 0 | 06.11.2009 23:00 |
Создание запроса | PR0Z0N | Microsoft Office Access | 2 | 25.10.2009 16:11 |