Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Взаимодействие приложения с удаленной БД [D6, MySQL]


Артем Владимирович ©   (2004-09-12 17:47:00) 

Здравствуйте!

Никогда ранее не работал с удаленными БД.
Подскажите, пожалуйста, самый простой способ получения значений определенного поля, расположенного
в таблице удаленной БД.

Т.е., например, на арендуемом хостинге есть БД. Необходимо
к ней подключиться через программу(без помощи пользователя), выбрать таблицу, перейти к определенной записи, выбрать поле и получить его значение.

Заранее всем благодарен.


Артем Владимирович   (2004-09-15 08:35:00) [1]

Пожалуйста, ответьте на предыдущий вопрос.


Артем Владимирович   (2004-09-14 09:44:00) [2]

Не совсем понятно как через программу считать переменную из файла, сохраненного на удаленном сервере?


dmitry   (2004-09-13 15:19:00) [3]

Можно как вариант использовать ODBC для MySQL под Delphi, некоторые провайдеры предоставляют услугу "Выделенный сервер SQL", к этому серверу возможен удаленный доступ "не с хостинговой машины", после установки ODBC драйвера создается псевдоним БД mySQL и средствами DBexpress при помощи TSQLquery делается запрос на удаленную БД, результат запроса хранится в TSQLquery.fieldvalues['column_name'];
Еще как вариант можно средствами PHP подключиться к БД - если есть парол и номер порта - то это не проблема, и нужную переменную сохранить в файл, после этого считать значение из файла в программе......... Удачи.


Polevi   (2004-09-13 13:18:00) [4]

через "нечто" он не хочет, хочет напрямую


AndB   (2004-09-13 12:49:00) [5]

уф.. ( "тревога" была ложной:). Ну так вот. Пока бегал подумал - flash тут даже не при чем. Можно (наверное) использовать Indy и просто закачивать url "httр:../../some.cgi?param=1¶m=2" - главное, что б на той стороне "нечто" обрабатывало ваши запросы и формировало в ответ пусть даже неск.строк текста.


AndB   (2004-09-13 11:42:00) [6]

у объектов flash есть метод загрузки переменных, выглядит так:
  loadVariables(" http://www.host.ru/loadvar.php", "_root");
в ответ на сервере отрабатывется некий php-скрипт, скажем loadvar.php и возвращает строку вида:
  &varName1=varValue1&varName2=varValue2...
затем в программе (уверен) можно получить значения flash-переменных varName1, varName2. я просто из Delphi такого не делал, но даже на JS переменные достаются. Как встроить FLASH в Delphi - можете найти и на этом сайте.
Loadvar.php может выглядеть так:
mysql_connect($hostip, $sqluser);
$sql="SELECT * FROM table WHERE...";
$res = mysql_db_query("baseName", $sql);
$row = mysql_fetch_array($res);
print "&varName1=".$row["field_name1"]."&varName2=".$row[3]."&";

(в данный момент подробнее не могу)
Кстати можно вызывать так:
  loadVariables(" http://www.host.ru/loadvar.ph p?param=bla1&where=bla2", "_root");
т.е. с параметрами и тем самым заказывать ответ скрипта, выбирать необходимые данные. А эти параметры в свою очередь можно передавать вo ->flash из своего приложения.
Вообще: гугл, loadVariables + delphi.


Артем Владимирович   (2004-09-13 10:19:00) [7]

Если можно, пожалуйста, по-подробнее.


AndB   (2004-09-13 04:37:00) [8]

а чем "сценарий на PHP не подходит"? Вставьте flash-ку в свое приложение, пусть она до хоста дотягивается. Получать из нее значения переменных можно. (как и вносить)


DrPass   (2004-09-12 22:55:00) [9]


> Т.е., например, на арендуемом хостинге есть БД.


> Через какой компонент подключиться и что вводить в необходимые
> поля

На этот счет можешь не беспокоиться - в природе не существует такого отчаянного хостинга, который предоставлял бы своим клиентам удаленный доступ к БД.
Все, на что ты можешь рассчитывать - работа ручками через web-интерфейс и ftp. Ну, еще можно сделать web-сервис, если премудрости XML освоишь. Только это, мягко говоря, не простой способ.


Артем Владимирович   (2004-09-12 22:34:00) [10]

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


Polevi   (2004-09-12 20:06:00) [11]

что конкретно непонятно


Артем Владимирович   (2004-09-12 19:46:00) [12]

Через сценарий на PHP не подходит - необходимо получить значение поля и передать его программе.
Непонятен вопрос подключения к удаленной БД.


Polevi   (2004-09-12 19:43:00) [13]

у него MySQL, но я сомневаюсь что база торчит наружу у хостера, надо взаимодействовать со средним звеном, скорее всего PHP


ANB   (2004-09-12 18:19:00) [14]

Anatoly Podgoretsky © - Не издевайся над человеком.
Он же просит определенную запись.
select field from table where ID = :ID

Артем Владимирович   - А БД - какая ?


Anatoly Podgoretsky   (2004-09-12 18:10:00) [15]

select field from table


Наверх

Титульная страница Поиск, карта сайта Написать письмо