powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Проблема с преобразованием типа при сохранении в базу данных
6 сообщений из 6, страница 1 из 1
Проблема с преобразованием типа при сохранении в базу данных
    #32813052
blackman_odessa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
uint addr
//тут переменной addr присваивается значение. Пусть для примера оно будет 46753, т.е. вполне укладывающееся в разрядную сетку для
//типа данных unsigned integer
INSERT INTO tmpObjects
(ObjectName,ObjectAddr,ObjectLenght)
VALUES(:name,:addr,2)
USING SQLCA;

это фрагмент программы, который, очевидно, сохраняет в базу данных новую запись, извлекая значения из соответствующих
переменных. Надо заметить, что в базе данных поле ObjectAddr имеет тип unsigned int. выполняется этот фрагмент с ошибкой:
SQLSTATE = 22003
[Sybase][ODBC Driver][Adaptive Server Anywhere]Numeric value out of range: Value -18783 out of range for destination
65536-18783=46753
То есть что-то (pbuilder, ODBC driver, ASA) преобразует сохраняемое значение в signed integer и оно становится несовместимым с полем.и еще одно. раньше в базе это поле по недосмотру имело тип integer, но было исправлено на беззнаковое. Числа, которые меньше чем 32768 сохраняются без проблем.
Подскажите шо это может быть или хоть на шо обратить внимание. Заранее благодарен за любую помощь.
...
Рейтинг: 0 / 0
Проблема с преобразованием типа при сохранении в базу данных
    #32813080
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackman_odessaПодскажите шо это может быть не знаю
blackman_odessaили хоть на шо обратить внимание. Обращаю внимание, что если заменить uint на long, то все заработает :)
...
Рейтинг: 0 / 0
Проблема с преобразованием типа при сохранении в базу данных
    #32813131
AnatolyRyabov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может попробовать создать профиль с другим ODBC драйвером?
Если он есть, конечно.
...
Рейтинг: 0 / 0
Проблема с преобразованием типа при сохранении в базу данных
    #32813165
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я перешел с ODBC на OLE DB из за того, что при вызове ХП с smallint параметрами PB умудрялся приводить значения к беззнаковым целым и ASA генерила ошибку переполнения. Вина на этом лежала целиком на PB, вполне возможно тут тот же случай, только с точностью до наоборот.
...
Рейтинг: 0 / 0
Проблема с преобразованием типа при сохранении в базу данных
    #32813285
blackman_odessa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С заменой на long проканало... Не нравится, т.к. едва понятен смысл сего действа. Продолжаю ваять, ожидая шо еще придется к этому вернуться. Зато могу не отвлекаться пока что. Но все равно спасибо - я ж обещал быть благодарным!!! )))) и насчет OleDb я учту как вариант - просто щас неохота разбираться...
...
Рейтинг: 0 / 0
Проблема с преобразованием типа при сохранении в базу данных
    #32813441
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackman_odessaС заменой на long проканало... Не нравится, т.к. едва понятен смысл сего действа.
Так это ж обычный бубен, неотъемлемая вещь для работы с PB :)

Правда бывают исключения: сейчас заканчиваю один проект на PB9.02+ASA9 - ни разу не встретился с багами :)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Проблема с преобразованием типа при сохранении в базу данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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