Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.03.2009, 15:27
goodwinrock goodwinrock вне форума
Прохожий
 
Регистрация: 09.01.2009
Сообщения: 37
Репутация: 10
По умолчанию Использование SQL в запросах

Здравствуйте. В процессе изучения SQL запросов, для реализации работы с данными в Дефли 7 я столкнулся с вопросом - как непосредственно применять запросы компонента Query на практике? Я в курсе, что Query с запросом SQL надо подключать к дата соурсу и данные отобразятся в гриде. Изучил кучу мануалов о синтаксисе операторов SELECT и DML (insert, update, ...). Объясните пожалуйсто подробно что необходимо сделать (что создать? куда разместить?) что бы спомощью SQL запроса реализовать добавление данных из таблицы 1 в таблицу 2 по нажатию кномки. БД парадокс 7. Данные о таблицах у меня хранятся в DataModule в Query.
Ответить с цитированием
  #2  
Старый 28.03.2009, 16:42
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вообще, можно сделать одним запросом без отображения данных.

INSERT INTO T2 (...) VALUES (SELECT ... FROM T1 WHERE ...)

Первое ... - список вставляемых полей
Второе ... - список выбираемых полей
Третье ... - условия отбора.

Этот запрос суешь в отдельный TQuery и потом у него вызываешь метод ExecSQL.

Подробнее о том, как можно строить запросы см, например, здесь:
www.sql.ru
http://www.compdoc.ru/bd/sql/
Ответить с цитированием
  #3  
Старый 28.03.2009, 20:47
goodwinrock goodwinrock вне форума
Прохожий
 
Регистрация: 09.01.2009
Сообщения: 37
Репутация: 10
По умолчанию

INSERT INTO Prodaj (Nom_zapis_tov, koll_tov1)
VALUES ( SELECT Nom_zapis_tov, Koll_tov FROM Ychet_tov )
Подогнал к свой БД этот код - ругается на Select (Invalid use keyword)
Как у Куверки вызвать метод ExecSQL?
Ответить с цитированием
  #4  
Старый 28.03.2009, 21:46
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Посмотри на ссылках точный синтаксис для твоей БД.
Ответить с цитированием
  #5  
Старый 29.03.2009, 00:02
goodwinrock goodwinrock вне форума
Прохожий
 
Регистрация: 09.01.2009
Сообщения: 37
Репутация: 10
По умолчанию

Да синтексис понятно как написать и придумать, я привел добавление записей (оператора insert ) в качестве примера. Меня интересует другое, я не могу понять как использовать готовые запросы. Манипуляция запросами. Для выполнения запроса по нажатию кнопки необходимо создать отдельный Квери с запросом, а как дальше действовать? У меня все таблицы хранятся в Квери и везде используется простой запрос SElect * From T1.
Ответить с цитированием
  #6  
Старый 29.03.2009, 00:16
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Если запрос на получение результата, то Query1.Open;
Если запрос не возвращает результат, то Query1.ExecSQL;
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:18.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025