Архив

Архив раздела ‘Delphi’

XML в Delphi

29 Август 2009 Нет комментариев

В прошлый раз написал об XML+C#, а о любимом и забыл вовсе :)

В Delphi работать с ХМЛ документом немного сложнее. Я предпочитаю следующий способ…

С помощью меню Project -> Type Library Import импортируем стандартную библиотеку microsoft msxml.dll(ну или msxml6.dll, зависит от версии), поддерживающую модель . При этом генерируется msxml_tlb.pas — файл описания COM сервера. С подготовкой всё :) . Чтобы использовать в вашей программе, просто пропишите в разделе USES имя файла MSXML_TLB.

В файле MSXML_TLB.pas описаны все интерфейсы, константы и соклассы COM-сервера.

Таким образом, простейший пример будет следующего вида:

Читать далее…

VN:F [1.9.13_1145]
Rating: 0.0/10 (0 votes cast)
Categories: Delphi Tags: , ,

Запрос к таблицам в разных базах данных через BDE

12 Август 2009 Нет комментариев

Если уже так случилось, и вы работаете с базой данных в через , да ещё и нужно сделать запрос к таблицам в разных базах, то эта запись как раз для вас.

Решение проблемы есть. Кидаем на форму или датамодуль два компонента . Выбираем для обоих AliasName, Name и DatabaseName. Пусть будут AliasName1, Name1, DatabaseName1  и AliasName2, Name2, DatabaseName2. Допустим, необходимо сделать запрос к таблице RealTable1 базы данных AliasName1 и таблице RealTable2 базы данных AliasName2, тогда, поместим на эту же форму компонент и назовём QRY1. Обращение к нужным таблицам в свойстве невизуальной компоненты QRY1 нужно будет записать в следующем виде:  «:DatabaseName1:RealTable1″ и «:DatabaseName2:RealTable2″ соответственно. Простейший запрос в QRY1 будет выглядеть как:

SELECT firsttable.field1,secondtable.field2
FROM

":DatabaseName1:RealTable1" firsttable,

":DatabaseName2:RealTable2" secondtable
WHERE firsttable.field3= secondtable.field4

ну или аналогичный запрос через join


SELECT firsttable.field1,secondtable.field2
FROM    ":DatabaseName1:RealTable1" firsttable inner join

":DatabaseName2:RealTable2" secondtable

ON firsttable.field3=secondtable.field4

Предупреждаю, работает очень медленно, поэтому не советую использовать на больших запросах и без особой необходимости. По возможности, лучше создать хранимую процедуру (stored procedure) на сервере, которая будет обращаться к этим двум таблицам и возвращать готовую выборку в компонент .

VN:F [1.9.13_1145]
Rating: 9.0/10 (1 vote cast)