|
Alaska SQL DatabaseEngines
С
доступностью SQL DatabaseEngines для Alaska
Xbase++, Alaska Software представляет новую
систему доступа к данным. Новая
технология DataAccessChain (DAC) обеспечит чистую
и хорошо сформированную модель для
введения бизнес-логики и доступа к
данным в Xbase++.
Ее
основные цели:
|
Независимость
от лежащей в основе системы базы
данных; |
| Большая
производительность по сравнению с
традиционным, основанным на функциях
и командах, механизмом доступа к данным в языке
xBase; |
|
Соблюдение
единственной модели работы
приложений для любых существующих на
сегодняшний день стратегий проектирования; |
|
Поддержка
разработки простых в использовании и
легких для понимания серверов
приложений и E-Commerce приложений. |
DAC
- это мощная среда разработки на основе
классов - набор из 9 классов различного
назначения. Например, класс dacSession(),
представленный с выпуском Alaska ADS-DBE в 1999
году, используется для поддержки
возможностей связи и обработки
транзакций.
Пример
Для
использования SQL DatabaseEngines вам
нужно будет добавить только пару строк в
вашу программу.
DbeLoad("ODBCDBE",
.F.) |
oSession :=
dacSession():New("DBE=ODBCDBE;Server=MYSQLSERVER;"+; |
"User=Poweruser;Password=Mike")
|
// код
вашей программы (никаких изменений
не требуется) |
oSession:disconnect() |
После
этого вы сможете читать, записывать
данные, перемещаться по любому
поддерживаемому источнику данных.
SQL
DatabaseEngines поддерживают прямой
доступ к Microsoft SQL Server и Oracle Database Server. Кроме
того, через ODBC, вы сможете использовать
другие системы баз данных, например,
Microsoft Access с его Jet Engine.
Следующий
пример демонстрирует легкость
использования SQL DatabaseEngines для
загрузки локальных данных в ODBC источник
данных.
PROCEDURE
MAIN(cTable, cVia) |
|
IF
Empty(cTable) .OR. Empty(cVia) |
|
|
?
"LOAD <table> <via> " |
|
|
QUIT |
|
ENDIF |
|
//
подключение к SQL серверу |
|
oSession
:= dacSession():New("DBE=ODBCDBE;Server=MYSQLSERVER;"+;
"User=Poweruser;Password=Mike") |
|
TblExport(cTable,
cVia) |
|
//
отключение от SQL сервера |
|
oSession:disconnect() |
RETURN |
|
|
//
загрузка DatabaseEngines |
PROCEDURE
DbeSys() |
|
DbeLoad("FOXDBE",.T.)
DbeLoad("CDXDBE",.T.)
DbeBuild("FOXCDX", "FOXDBE", "CDXDBE")
DbeLoad("ODBCDBE") |
RETURN |
|
|
//
создание таблицы на сервере и
копирование данных с локального
диска на SQL сервер
FUNCTION TblExport(cTable, cVia)
LOCAL aStruct
LOCAL i, nFCount |
|
|
|
|
|
USE (cTable)
ALIAS Source EXCLUSIVE VIA (cVia)
aStruct := DbStruct()
nFCount := FCount()
AEVAL(aStruct, {|a| Qout(a)})
? RecCount() , "запись в исходной таблице." |
|
|
|
DbCreate(cTable,
aStruct, "ODBCDBE")
USE (cTable) EXCLUSIVE VIA ODBCDBE ALIAS Target NEW
AEVAL(DbStruct(), {|a| Qout(a)})
DO WHILE .NOT. Source->(eof()) |
|
|
Target->(DbAppend())
FOR i:= 1 TO nFCount |
|
|
|
Target->(FieldPut(i,
Source->(FieldGet(i)))) |
|
|
NEXT
Source->(dbSkip()) |
|
ENDDO
Target->(DbCommit())
? RecCount() , "запись успешно
экспортирована."
CLOSE import
CLOSE export |
RETURN
.T. |
Основываясь
на DatabaseEngine технологии Alaska Software, можно
получить доступ к различным источникам
данных, независимо от того, какая
используется система баз данных,
локальная или глобальная. С
использованием DatabaseEngines и технологии
Data-Access-Chain, легкость Xbase++, как языка
программирования, совмещена с мощью SQL
СУБД.
С
помощью недавно выпущенного компанией
Alaska Software ODBC SQL DatabaseEngine вы получите
доступ к электронным таблицам MS Excel,
базам данных MS Access, MS SQL Server, Oracle или к
любой другой SQL СУБД. Единственным
требованием является наличие
установленного ODBC драйвера.
|