Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 toad 8.6.1 для 10.2.0.2  [new]
Avalanche
Member

Откуда: Москва
Сообщений: 103
Здравствуйте.
После наката патча 10.2.0.2 наткнулся на
Error: ''IN' is not a valid integer value'" in Procedure Editor when upgrading Database to 10.2.0.2.
Кто-нибудь может помочь апгрейдом моего Toad 8.6.0.38 на 8.6.1?
16 сен 06, 19:12    [3146186]     Ответить | Цитировать Сообщить модератору
 Re: toad 8.6.1 для 10.2.0.2  [new]
Bin Laden
Guest
a) log in as SYS.
2) go to schema browser and extract DDL for ALL_ARGUMENTS. Paste it into the
SQL Editor and change the name of it to ALL_ARGUMENTS_OLD so you have a backup.
Run the script and verify that the view was created and is valid.
3) run this:

CREATE OR REPLACE VIEW ALL_ARGUMENTS
(OWNER, OBJECT_NAME, PACKAGE_NAME, OBJECT_ID, OVERLOAD,
ARGUMENT_NAME, POSITION, SEQUENCE, DATA_LEVEL,
DATA_TYPE, DEFAULT_VALUE, DEFAULT_LENGTH, IN_OUT, DATA_LENGTH,
DATA_PRECISION, DATA_SCALE, RADIX, CHARACTER_SET_NAME, TYPE_OWNER,
TYPE_NAME, TYPE_SUBNAME, TYPE_LINK, PLS_TYPE, CHAR_LENGTH,
CHAR_USED, SUBPROGRAM_ID)
AS
SELECT
u.name, /* OWNER */
NVL(a.PROCEDURE$,o.name), /* OBJECT_NAME */
DECODE(a.PROCEDURE$,NULL,NULL, o.name), /* PACKAGE_NAME */
o.obj#, /* OBJECT_ID */
DECODE(a.overload#,0,NULL,a.overload#), /* OVERLOAD */
a.argument, /* ARGUMENT_NAME */
a.position#, /* POSITION */
a.SEQUENCE#, /* SEQUENCE */
a.LEVEL#, /* DATA_LEVEL */
DECODE(a.TYPE#, /* DATA_TYPE */
0, NULL,
1, DECODE(a.charsetform, 2, 'NVARCHAR2', 'VARCHAR2'),
2, DECODE(a.scale, -127, 'FLOAT', 'NUMBER'),
3, 'NATIVE INTEGER',
8, 'LONG',
9, DECODE(a.charsetform, 2, 'NCHAR VARYING', 'VARCHAR'),
11, 'ROWID',
12, 'DATE',
23, 'RAW',
24, 'LONG RAW',
29, 'BINARY_INTEGER',
69, 'ROWID',
96, DECODE(a.charsetform, 2, 'NCHAR', 'CHAR'),
100, 'BINARY_FLOAT',
101, 'BINARY_DOUBLE',
102, 'REF CURSOR',
104, 'UROWID',
105, 'MLSLABEL',
106, 'MLSLABEL',
110, 'REF',
111, 'REF',
112, DECODE(a.charsetform, 2, 'NCLOB', 'CLOB'),
113, 'BLOB', 114, 'BFILE', 115, 'CFILE',
121, 'OBJECT',
122, 'TABLE',
123, 'VARRAY',
178, 'TIME',
179, 'TIME WITH TIME ZONE',
180, 'TIMESTAMP',
181, 'TIMESTAMP WITH TIME ZONE',
231, 'TIMESTAMP WITH LOCAL TIME ZONE',
182, 'INTERVAL YEAR TO MONTH',
183, 'INTERVAL DAY TO SECOND',
250, 'PL/SQL RECORD',
251, 'PL/SQL TABLE',
252, 'PL/SQL BOOLEAN',
'UNDEFINED'),
DEFAULT$, /* DEFAULT_VALUE */
deflength, /* DEFAULT_LENGTH */
DECODE(in_out,NULL,'IN',1,'OUT',2,'IN/OUT','Undefined'), /* IN_OUT */
LENGTH, /* DATA_LENGTH */
PRECISION#, /* DATA_PRECISION */
DECODE(a.TYPE#, 2, scale, 1, NULL, 96, NULL, scale), /* DATA_SCALE */
radix, /* RADIX */
DECODE(a.charsetform, 1, 'CHAR_CS', /* CHARACTER_SET_NAME */
2, 'NCHAR_CS',
3, NLS_CHARSET_NAME(a.charsetid),
4, 'ARG:'||a.charsetid),
a.type_owner, /* TYPE_OWNER */
a.type_name, /* TYPE_NAME */
a.type_subname, /* TYPE_SUBNAME */
a.type_linkname, /* TYPE_LINK */
a.pls_type, /* PLS_TYPE */
DECODE(a.TYPE#, 1, a.scale, 96, a.scale, 0), /* CHAR_LENGTH */
DECODE(a.TYPE#,
1, DECODE(bitand(a.properties, 128), 128, 'C', 'B'),
96, DECODE(bitand(a.properties, 128), 128, 'C', 'B'), 0), /* CHAR_USED */
a.PROCEDURE# /* SUBPROGRAM ID */
FROM obj$ o,argument$ a,USER$ u
WHERE o.obj# = a.obj#
AND o.owner# = u.USER#
AND (owner# = USERENV('SCHEMAID')
OR EXISTS
(SELECT NULL FROM v$enabledprivs WHERE priv_number IN (-144,-141))
OR o.obj# IN (SELECT obj# FROM sys.objauth$ WHERE Grantee# IN
(SELECT kzsrorol FROM x$kzsro) AND privilege# = 12))
/
4) Toad should behave again. I really doubt this will cause any problems with
oracle. It's just a read-only view. But If you encounter any other problems,
you can revert back to the old view in step 2).
17 сен 06, 10:06    [3146814]     Ответить | Цитировать Сообщить модератору
 Re: toad 8.6.1 для 10.2.0.2  [new]
Viewer
Member

Откуда: Самара
Сообщений: 5369
Avalanche
... Кто-нибудь может помочь апгрейдом моего Toad 8.6.0.38 на 8.6.1?

кхе ... скачать 8.6.1 с хомяка (registration is identical with 8.6.0.38)
18 сен 06, 08:03    [3148223]     Ответить | Цитировать Сообщить модератору
 Re: toad 8.6.1 для 10.2.0.2  [new]
Avalanche
Member

Откуда: Москва
Сообщений: 103
Спасибо Bin Laden, я попробую вечером на разработке заткнуть пока через изменение ALL_ARGUMENTS, но вопрос хочется решить с правильной стороны, это бага Тоада.
Смотрел на осле - там непонятный 8.6, сомневаюсь что нужный, скорее всего 0.38-ой.
Если у кого-то есть Toad upgrade 8.6.1, можете в почту скинуть сообщение? Готов на любые варианты сотрудничества (скачать, встретиться в Москве, ...)
19 сен 06, 11:51    [3154573]     Ответить | Цитировать Сообщить модератору
 Re: toad 8.6.1 для 10.2.0.2  [new]
Avalanche
Member

Откуда: Москва
Сообщений: 103
Еще раз спасибо Bin Laden, обход с изменением ALL_ARGUMENTS помог восстановить работоспособность лягушки.
Но проблемы Тоада хочется решить с помощью правильного патча. Поделитесь плз Toad upgrade 8.6.1 если у кого есть, с меня бонус.
24 сен 06, 15:45    [3176993]     Ответить | Цитировать Сообщить модератору
 Re: toad 8.6.1 для 10.2.0.2  [new]
rAHrCTEP
Guest
У меня ваще нет прав на изменение чего-нить в схеме sys. Версия жабы ваще 8.0. Да и админа чтобы не напрягать делаю так:

Если вы не можете изменить all_arguments т.к. у вас нет привилегий администратора или не можете войти под sys тогда создайте view в схеме вашего пользователя.

CREATE OR REPLACE VIEW "Ваш пользователь".all_arguments
AS select va.*, ua.SUBPROGRAM_ID SUBPROGRAM_ID1 from sys.all_arguments va, user_arguments ua
where va.OBJECT_ID = ua.SUBPROGRAM_ID

Возможно вместо user_arguments лучше заюзать dba_arguments, но мне и этого хватает.
8 июн 07, 12:57    [4247329]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить