Базы данных - Cache - статьи


Использование класса %Library. с Caché SQL Gateway - часть 2


Set Connection=##class(%SQLGatewayConnection).%New()
Set res = Connection.Connect("DSNName"," username", “pwd")

-Затем создаем объект класса %ResultSet

ResSet=##class(%ResultSet).%New("%DynamicQueryGW:SQLGW")

-Определяем и выполняем запрос (обратите внимание Connection, т.е. созданное SQLGateWay соединение передается третьим параметром): Do ResSet.Prepare("SELECT * FROM TABLE",,Connection)
Do ResSet.Execute()
while ResSet.Next()

{
For i=1:1:ResSet.GetColumnCount()

{
             if (i'=ResSet.GetColumnCount())
             {
                         Write ResSet.GetData(i)_", "
             }
             else
             {
                         Write ResSet.GetData(i),!
             }

}

} 

-Разрываем соединение: Do Connection.Disconnect()

Важно отметить, что объект %SQLGatewayConnection создается отдельно не случайно. Само соединение с удаленным источником данных занимает довольно много времени, поэтому было бы нерационально открывать соединение для каждого отдельного запроса.




- Начало -  - Назад -  - Вперед -