Открыть курсор
Назначение
Метод Open
открывает подчиненный канал на базе соединения, указанного как параметр, и создает объект «курсор», предназначенный для обработки SQL-запросов.
Синтаксис
value LinterCursor.Open(Connection)
-
Connection
-
Ранее установленное соединение, на базе которого будет открыт объект
Cursor
.
Возвращаемое значение
В случае удачного завершения возвращается объект Cursor
.
Пример
require "LinRuby" begin connect = LinterConnection.Open("SYSTEM", "MANAGER8", nil, M_EXCLUSIVE | Q_ENCODE) puts "connection to RDBMS Linter is successed" cursor = LinterCursor.Open(connect) puts "Cursor is successed" cursor.SetOption(SET_CURSOR_NAME, "CURSOR_1") puts "Cursor was named" cursor.SQLExecuteDirect("select NAME, JOB, CITY, AGE from PERSON;") puts "Before update with current of" hash = cursor.SQLFetchHash(FETCH_ABSNUM, 4) j = 0 while ( j < hash.keys.size ) puts "#{hash.keys[j]} = #{hash.values[j]}" j = j +1 end cursor.SQLExecuteDirect("UPDATE PERSON SET AGE = 25 WHERE CURRENT OF CURSOR_1;") cursor.SQLExecuteDirect("select NAME, JOB, CITY, AGE, PERSONID from PERSON;") !=nil puts "After update with current of" hash = cursor.SQLFetchHash(FETCH_ABSNUM, 4) j = 0 while ( j < hash.keys.size ) puts "#{hash.keys[j]} = #{hash.values[j]}" j = j +1 end rescue = > error puts error ensure if cursor != nil cursor.Close() end if connect != nil connect.Close() end end