Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Добрый день всем. При автоматической генерации скрипта создания хранимых процедур наткнулся на ошибку, при которой невозможен DROP или ALTER PROCEDURE. Ниже приведен текст скрипта, воспроизводящий данную ошибку. Вроде бы из текста скрипта понятна суть ошибки. P.S. Скрипт выполнялся в ISQL.EXE. С уважением, Polesov. /* --------------------------------------- The script parts executed in ISQL.EXE */ CREATE DATABASE 'localhost:c:\db\sp_error.fdb' USER 'SYSDBA' PASSWORD 'masterkey' PAGE_SIZE 4096; CREATE TABLE ITEMS ( ID INTEGER NOT NULL, /* system domain RDB$1 */ NAME VARCHAR(10) NOT NULL, /* system domain RDB$2 */ COST NUMERIC(15,2) NOT NULL /* system domain RDB$3 */ ); ALTER TABLE ITEMS ADD CONSTRAINT PK_ITEMS PRIMARY KEY (ID); ALTER TABLE ITEMS ADD CONSTRAINT UNQ_ITEMS UNIQUE (NAME); SET TERM ^ ; CREATE PROCEDURE GET_ITEMS RETURNS ( ID RDB$1, -- specify the same system domains, NAME RDB$2, -- which were created automatically COST RDB$3 ) -- when creating a table ITEMS AS BEGIN FOR SELECT ID, NAME, COST FROM ITEMS INTO :ID, :NAME, :COST DO SUSPEND; END ^ SET TERM ; ^ /* when you try to change the procedure an error occurs */ SET TERM ^ ; ALTER PROCEDURE GET_ITEMS RETURNS ( ID RDB$1, NAME RDB$2, COST RDB$3 ) AS BEGIN FOR SELECT ID, NAME, COST FROM ITEMS ORDER BY NAME INTO :ID, :NAME, :COST DO SUSPEND; END ^ SET TERM ; ^ /* ERROR: Statement failed, SQLSTATE = 42000 unsuccessful metadata update -cannot delete -DOMAIN RDB$1 -there are 1 dependencies */ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:17 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Polesov, на кой макар ты в текст ХП прописал домены генерированные сервером ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:28 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
PolesovВроде бы из текста скрипта понятна суть ошибки. Ага. И она заключается в том, что ни при каких обстоятельствах нельзя ссылаться на автоматически генерируемые домены. Следует использовать пользовательские домены или TYPE OF. Эти домены - артефакт реализации и могут ненароком исчезнуть в какой-нибудь версии. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:30 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Для того, что бы тип выходных параметров SP совпадал с типом полей таблиц, участвующих в запросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:32 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Ну, строго говоря, если такое использование доменов технически разрешено, то невозможность изменить процедуру явная ошибка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:33 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Hello, Polesov! You wrote on 3 апреля 2015 г. 18:40:12: Polesov> Для того, что бы тип выходных параметров SP совпадал с типом полей > таблиц, участвующих в запросеTYPE OF Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:39 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Polesovстрого говоря, если такое использование доменов технически разрешено, то невозможность изменить процедуру явная ошибка Значит надо всего-то их использование технически запретить. Я бы это сделал, но прав коммита не имею. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:42 |
|
||
|
FB2.5 - ошибка при ALTER PROCEDURE, содержащей в параметрах ссылки на системные домены
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovЗначит надо всего-то их использование технически запретить. Или при ALTER PROCEDURE оставить домен в покое, если на него еще ссылается какой-либо объект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2015, 18:51 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38926657&tid=1562936]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 152ms |

| 0 / 0 |
