Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Импорт данных из удаленного файла, данные из .sql to StringGrid 
:(
    Опции темы
welt
  Дата 17.4.2006, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.5.2005
Где: UnderGround

Репутация: нет
Всего: нет



Приветствую всех.
у меня вопрос.
На сервере лежит удаленный файл .sql 
(причем путь к нему - ссылка хттп)
в котором хранится таблица, например, такая :
Код

CREATE TABLE 123 
  (  1 varchar(255) ,
    2 varchar(255) ,
    3 varchar(255) );  
  INSERT INTO   123 (1, 2, 3) values ( '4' , '5' , '6' );
  INSERT INTO   123 (1, 2, 3) values ( '7' , '8' , '9' );

Задача в том, чтобы импортировать данные из этого файла в StringGrid
Нужно ли для этого соединяться с удаленной бд из приложения?
Как это программно осуществить? (киньте код, плиз) 
PM MAIL   Вверх
welt
Дата 17.4.2006, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.5.2005
Где: UnderGround

Репутация: нет
Всего: нет



Вроде, можно с помощью компонента TNMHTTP в палитре компонентов на вкладке FastNet. При этом нужно использовать библиотеку регулярных выражений http://regexpstudio.com/RU/.
Может мне кто-нибудь подсказать как все это реализовать? 
PM MAIL   Вверх
Snowy
Дата 18.4.2006, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 2
Всего: 484



Забрать файл:
Код

uses IdHttp;     
var     
  http: TIdHttp;     
  s: string;
begin     
  http:=TIdHTTP.Create(nil);     
  try     
    s := http.Get('http://www.mail.ru/');    
  except    
    ShowMessage('Неа');    
  end;    
  http.Free;
end;

Или так: http://forum.vingrad.ru/index.php?showtopi...st&p=702016
А дальше подключайся к локальной базе и загоняй в нее комманду из s. 
PM MAIL   Вверх
welt
Дата 18.4.2006, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.5.2005
Где: UnderGround

Репутация: нет
Всего: нет



Snowy,   мне нужно файл файл .sql 
импортировать в StringGrid.
 
PM MAIL   Вверх
welt
Дата 18.4.2006, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.5.2005
Где: UnderGround

Репутация: нет
Всего: нет



Вот код для выполнения sql-запроса.
Код

procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.close; {Деактивируем запрос в качестве одной из мер предосторожности }   
 Query1.SQL.Clear; {Стираем любой предыдущий запрос}   
 If Memo1.Lines[0] <> '' {Проверяем на предмет пустого ввода} then   
   Query1.SQL.Add(Memo1.Text) {Назначаем свойству SQL текст Memo}   
 else
 begin    
 messageDlg('Не был введен SQL-запрос', mtError, [mbOK], 0);   
 exit;    
 end;    
 try        {перехватчик ошибок}  
  
 Query1.Open;     {Выполняем запрос и открываем набор данных}    
 except     {секция обработки ошибок}    
 On e : EDatabaseError do {e - новый дескриптор ошибки}    
 messageDlg(e.message, mtError, [mbOK],0); {показываем свойство message объекта e}    
 end;      {окончание обработки ошибки}  
end;
 
на форме находятся компоненты table1  и query1 из BDE
и еще memo1, куда нужно вводить sql-запрос
Я ввожу в memo такой запрос :
Код

CREATE TABLE 123 
  (  1 varchar(255) ,
    2 varchar(255) ,
    3 varchar(255) );  
  INSERT INTO   123 (1, 2, 3) values ( '4' , '5' , '6' );
  INSERT INTO   123 (1, 2, 3) values ( '7' , '8' , '9' );

И делфи выдает такую ошибку:
user posted image
что делать?
 

Это сообщение отредактировал(а) welt - 18.4.2006, 12:38
PM MAIL   Вверх
_hunter
Дата 18.4.2006, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 1
Всего: 98



по одному запросу выполнять ( то, что до точки с запятой )... 


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
welt
Дата 18.4.2006, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.5.2005
Где: UnderGround

Репутация: нет
Всего: нет



ок.
вся проблема в том, чтобы подключиться к удаленной бд. 
В этой бд будет таблица.
Как это осуществить программно:
есть удаленная бд. Нужно подключиться к ней. И импортировать из таблицы данные в StringGrid.

киньте ссылку на подобную тему или код делфи
 smile  
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0497 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.