![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.07.2011
Сообщений: 20
|
![]()
Всем привет!
Задача стоит такая: 1. Клиент отправляет на сервер запрос в виде "SELECT * FROM test_db" 2. Сервер обращается к mysql с этим запросом, получает ответ через компонент Query1 : TSQLQuery; 3. Как передать в коде ответ из mysql клиенту Код:
Код:
|
![]() |
![]() |
![]() |
#2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 11.07.2011
Сообщений: 20
|
![]()
спасибо, буду разбираться
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 11.07.2011
Сообщений: 20
|
![]()
надо будет ознакомиться
|
![]() |
![]() |
![]() |
#6 | ||
Пользователь
Регистрация: 11.07.2011
Сообщений: 20
|
![]() Цитата:
Цитата:
Подскажите пожалуйста, как этот TStringList вывести в DBGrid, через цепочку ClientDataSet -> DataSource -> DBGrid ? Как тогда вносить записи в ClientDataSet ? Если не так, пожалуйста, подскажите способ, как вывести информацию из TStringList в DBGrid. У клиента нет прямой связи с БД. Только через ServerSocket. |
||
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
Я к тому, что изобретаете вы велосипед. Коннект к удалённой базе через TCP сервер (включая поддержку протоколов HTTP/SOAP и др.), Борланд реализовал сто лет назад, называлось это MIDAS, сейчас DataSnap.
В принципе, если научите свой сервер общаться по протоколу SOAP, на клиенте можно будет использовать стандартный SOAP клиент (TSOAPConnection), и обычный DBGrid, которому пофиг, куда именно коннектится датасет. Связка будет SOAPConnection -> ClientDataSet -> DataSource -> DBGrid. > как этот TStringList вывести в DBGrid ну, допустим, вывели вы (хотя в проще в обычный Grid вывести), и что дальше? Юзер изменил одно поле, будете строить огород для обновления данных на сервере? А потом точно такой же огород для DBEdit и ещё десятка DB-aware контролов? Тогда уж проще наследовать свой объект от ClientDataSet и научить его работать с вашим сервером. Напишите свой DataSnap, фактически )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 23.07.2011
Сообщений: 10
|
![]()
ну у меня именно так.
только не поиграешь через прокси, маяк не умеет. конечно у меня впринципе есть идея как его можно пустить через проксю но оно не надо мне теперь |
![]() |
![]() |
![]() |
#9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#10 | |
Пользователь
Регистрация: 11.07.2011
Сообщений: 20
|
![]()
Ага, уже изобрел и вроде бы ездит.
DBGrid в помойку, сделал свою сетку как класс и прикрутил к ней нужные для моей работы методы, сеттеры и геттеры. Просто почитал много инфы про грид.Пытался настроить под себя её. Пытался поставить халявную версию DBGridEh, но что то разочаровался. Цитата:
Например: (команда)(действие)(данные). - естественно с MD5 (Скажите, правильно ли я делаю передачу между клиент - сервером ?) Вот в "данные" как раз и пересылаю запарсеные записи из таблицы. А на стороне клиента разбираю через отдельно написанный класс. И все данные, пришедшие с сервера как раз пропускаю через такой парсер. Вот с этого парсера и пускаю в самопальную сетку все данные. Единственная проблема, это не знаю как отследить, что mysql запрос выполнен и только тогда отправлять с сервера весь пакет. А то получается, что с клиента передал команду серверу. А тот не дожидаясь ответа от mysql посылает ответ клиенту. Иногда приходит пустой пакет без ответа от mysql. Скажите пожалуйста, каким событием это отловить? Да и ошибки на стороне сервера думаю не так сложно отловить. А сам принцип работы как в PHP делаю. Тоесть послал запрос, жди ответа от сервера. А мне больше и не нужно. Данные в сетке в реальном времени мне не надо обрабатывать. Если нужно поменять какую нибудь запись в поле, то просто сделал отдельное окно для редактирования этой записи. Да, писанины много, но зато свое, родное, и за одно понимаешь как это все работает. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
progressbar и отправка файла через ServerSocket | D_E_N | Работа с сетью в Delphi | 2 | 15.02.2011 15:37 |
Отправка типизированных данных через Client/ServerSocket | prod87 | Работа с сетью в Delphi | 2 | 10.07.2010 20:47 |
Передача данных StringGrid через ServerSocket - ClientSocket | Polotenchik | Общие вопросы Delphi | 4 | 18.03.2010 01:42 |
Реализация бана через ServerSocket и ClientSocket | Sensizu | Общие вопросы Delphi | 0 | 04.01.2010 13:42 |
Одновременная работа с несколькими портами через ServerSocket | Sane2k | Работа с сетью в Delphi | 16 | 06.03.2009 17:24 |