powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Cursor from PB7.0 to PB8.0
24 сообщений из 24, страница 1 из 1
Cursor from PB7.0 to PB8.0
    #33363847
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перетащили проект с ПБ7.0 на ПБ 8.0. Возникла проблема с курсорами.
Имеется база данных в сети и несколько компьютеров с программой. Если на одном из компов программа запущена, то на другом происходит зависание при попадании на курсор. На ПБ 7.0 проблем не было.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
DECLARE holiday_ind CURSOR FOR
SELECT "row","type"
FROM   "t_hearot"
WHERE  "key" =  9 
ORDER BY "row" ASC;

open holiday_ind;
FETCH holiday_ind INTO :tmp1,:temp_num_color;
DO WHILE SQLCA.SQLCode =  0 
	is_halls_index[tmp1] = temp_num_color
	if not isnull(temp_num_color) then
		num_color=integer(temp_num_color)
	else
		num_color= 2 
	end if
	FETCH holiday_ind INTO :tmp1,:temp_num_color;
LOOP
Close holiday_ind;
Дебагер останавливается на строке
Код: plaintext
FETCH holiday_ind INTO :tmp1,:temp_num_color;
и все умирает. Если работает только один комп, то проблем нет.
В чем может быть проблема?
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363856
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riska wrote:

> В чем может быть проблема?

Например, в блокировках. Кстати, а какой сервер-то?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363885
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riskaи все умирает. Если работает только один комп, то проблем нет.
В чем может быть проблема?
Как все умирает? сваливает приложение, или просто зависает?
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363909
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim2000
Riska wrote:

> В чем может быть проблема?

Например, в блокировках. Кстати, а какой сервер-то?
Posted via ActualForum NNTP Server 1.3
Adaptive Server Anywhere 6.0
Никаких изменений в блокировках не делали.
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363910
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Estets Riskaи все умирает. Если работает только один комп, то проблем нет.
В чем может быть проблема?
Как все умирает? сваливает приложение, или просто зависает?
просто зависает
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363952
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вряд ли в этом дело, но один раз было
Попробуйте убрать order by просто ддля выполнения сортировки может выделяться много ресурсов сервера БД
Я не спец по sybase, но подозреваю, что от oracle он не сильно отличается
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33363975
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не помогает. Курсор возвращает всего 4 строки.
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364048
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если для проверки добавить with (nolock)?
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364050
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001Я не спец по sybase, но подозреваю, что от oracle он не сильно отличается
Улыбнуло
Очень сильно отличается. В особенности в том что касается блокировок.
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364054
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или попробовать SQLCA.Lock='RC'
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364091
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейили попробовать SQLCA.Lock='RC'
Не помогает. Если курсор заменить на DataStore, то работает нормально. Но менять все курсоры, естественно, не реально.
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364153
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Каковы значения CursorLib,CursorLock и CursorScroll в DBParm?
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364358
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейКаковы значения CursorLib,CursorLock и CursorScroll в DBParm?
Default
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364367
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
// Profile Aruit
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=Aruit;UID=;PWD='"
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364382
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riska wrote:

> Adaptive Server Anywhere 6.0
> Никаких изменений в блокировках не делали.

Их могли сделать за вас ;). К сожалению, я не помню, как смотреть
блокировки в ASA6, но я бы всё-таки проверил эту гипотезу - хотя бы для
того, чтобы её исключить. Второй вариант - запрос очень долго
выполняется. С другими не сталкивался.

Можно ещё попробовать поставить патчи на PB, если этого ещё не сделали.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364456
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати вопрос автору, а в чем целесообразность перевода приложения на PB8? Если не хочется заморачиваться с Юникодом то почему не PB9?, а так множество приложений на 6.5.1 крутится и ничего.

А по поводу вопроса, еще раз внимательно посмотреть все что касается блокировок и транзакций замените курсор на select @@trancount from dummy и сравните что показывает на PB7 и PB8, ну и как обычно прежде всего поставить последний Bulid PB8
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364510
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EstetsКстати вопрос автору, а в чем целесообразность перевода приложения на PB8? Если не хочется заморачиваться с Юникодом то почему не PB9?, а так множество приложений на 6.5.1 крутится и ничего.

А по поводу вопроса, еще раз внимательно посмотреть все что касается блокировок и транзакций замените курсор на select @@trancount from dummy и сравните что показывает на PB7 и PB8, ну и как обычно прежде всего поставить последний Bulid PB8
Была написана давно маленькая прога на 7.0. Есть еще одна большая на 8.0. Их сейчас надо объединить.
Я сейчас убираю все курсоры. Ставлю вместо них DataStore. Их оказалось не так уж много :)
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364773
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riska ЗоринАндрейили попробовать SQLCA.Lock='RC'
Не помогает. Если курсор заменить на DataStore, то работает нормально. Но менять все курсоры, естественно, не реально.
Очередное подтверждение моего правила - за embedded SQL УБИВАТЬ !!!
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33364933
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрей spas2001Я не спец по sybase, но подозреваю, что от oracle он не сильно отличается
Улыбнуло
Очень сильно отличается. В особенности в том что касается блокировок.
Андрей я не имел ввиду блокировки, а пожирание ресурсов под сортировку
При неправильной установке сервера - это ох..ная проблема
Но в целом, я согласен с Филиппом - встроенный SQL vs DataWindow - полная лажа
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33370088
iLLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно подумать, что датасторе получает данные с сервера не через курсор...)
А в АСА смотреть блокировки надо через dbconsol.exe.


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33370093
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLer
Можно подумать, что датасторе получает данные с сервера не через курсор...)
А в АСА смотреть блокировки надо через dbconsol.exe.
МОЖНО
НЕ через курсор.
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33370268
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLer
Можно подумать, что датасторе получает данные с сервера не через курсор...)
А в АСА смотреть блокировки надо через dbconsol.exe.


Posted via ActualForum NNTP Server 1.3

Одно дело явный курсор в PB и совсем другое внутренние курсоры СУБД используемые при select
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33370362
Konstantin Goldobin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>Очередное подтверждение моего правила - за embedded SQL УБИВАТЬ!!!

А почему, кстати? Никогда не встречал аргументов за и против.

--
With regards,
Konstantin Goldobin
http://www.vsi.ru/~kgold



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Cursor from PB7.0 to PB8.0
    #33370428
Фотография Ikar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konstantin Goldobin
>Очередное подтверждение моего правила - за embedded SQL УБИВАТЬ!!!
А почему, кстати? Никогда не встречал аргументов за и против.
Было. Обсуждалось. Воспользуйтесь поиском.
---
С уважением, IKAR

ikar@ikarhomecenter.ru
IkarHomeCenter
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Cursor from PB7.0 to PB8.0
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]