|
преобразование типов
|
|||
---|---|---|---|
#18+
а как execute immediate в посгре реализовать ? просто execute ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 18:15 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, Это Postgre s или PostgreSQL. Сокращать до "Postgre", хоть и хочется, но неверно. P.S. Мне тоже нравиться больше, чем ORACLE... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 18:53 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
блен а почему я создала функцию и она у меня в списке значицо, пытаюсь выполнить- пишет типо нет я ее создала и под этим же пользователем выполняю, как это ее нет ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:36 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
vyegorov, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:37 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
делаю вот так select "fill_d$route_no"(1::integer, 20162040001::bigint, 1::integer); тоже пишет, что даз нот экзистс ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:43 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
и вот так тоже такую ошибку выдает SELECT * FROM test.fill_d$route_no(1::integer, 20162040001::bigint, 1::integer); ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:46 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, В ПЖ функции могут быть перегружены, из чего следует, что нужно давать аргументы правильных типов. Посмотреть доступные функции через `psql` можно так: \df fill_* Также я бы не рекомендовал явным образом указывать типы для констант, исключая случаи, когда без этого всё совсем не работает. Если так делать, можно нарваться не неожиданности, вроде отсутствующих функций, или "неработающих" индексов. Использовать нестандартные символы (вроде `$`) тоже не стоит. Экранировать идентификаторы постоянно как-то не аллё... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:49 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, Вы текст ошибки целиком приводите, а не свою интерпретацию. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:51 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
ERROR: function test.fill_d$route_no(integer, bigint, integer) does not exist LINE 1: SELECT * FROM test.fill_d$route_no(233, 20162040001, 1) ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:52 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
vyegorovOzornitca, В ПЖ функции могут быть перегружены, из чего следует, что нужно давать аргументы правильных типов. Посмотреть доступные функции через `psql` можно так: \df fill_* Также я бы не рекомендовал явным образом указывать типы для констант, исключая случаи, когда без этого всё совсем не работает. Если так делать, можно нарваться не неожиданности, вроде отсутствующих функций, или "неработающих" индексов. Использовать нестандартные символы (вроде `$`) тоже не стоит. Экранировать идентификаторы постоянно как-то не аллё... у нас по регламенту именования так нужно было так проименовать (( ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:53 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
вторая ошибка, при вызове не из окна редактирования функции , а селект * фром RROR: function test.fill_d$route_no(integer, bigint, integer) does not exist LINE 1: SELECT * FROM test.fill_d$route_no(1::integer, 20162040001::... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:54 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
vyegorovOzornitca, В ПЖ функции могут быть перегружены, из чего следует, что нужно давать аргументы правильных типов. Посмотреть доступные функции через `psql` можно так: \df fill_* Также я бы не рекомендовал явным образом указывать типы для констант, исключая случаи, когда без этого всё совсем не работает. Если так делать, можно нарваться не неожиданности, вроде отсутствующих функций, или "неработающих" индексов. Использовать нестандартные символы (вроде `$`) тоже не стоит. Экранировать идентификаторы постоянно как-то не аллё... а что значит через \df fill_ ? это в селекте, или в команде ? как смотреть ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 20:56 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
простите за глупые вопросы)))))) заранее предваряя ваши оскорбленные чувства )) понять и простить))) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:01 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, а показать хотя бы шапку определения ф--ии религия запрещает ? как принято выражаться в дипломатии "Д,Б" ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:08 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
qwwqOzornitca, а показать хотя бы шапку определения ф--ии религия запрещает ? как принято выражаться в дипломатии "Д,Б" CREATE OR REPLACE FUNCTION test.fill_d$route_no ( p_seans_load_id integer, p_load_periods integer, p_hist integer = 1 ) RETURNS void AS $body$ DECLARE v_trg INTEGER; v_cnt INTEGER; v_err INTEGER; v_load_id_current bigint; v_seq_razm_id bigint; i record; func_cmd text; BEGIN SELECT nextval('SEQ_LOAD_ID'::regclass) into v_load_id_current; ............................... END; $body$ LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER COST 100; ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:14 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
я переименовала с $ заменила на _ не помогло ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:18 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, (integer, bigint, integer) вы передаете, а вот что ждет функция. p_seans_load_id integer, p_load_periods integer , p_hist integer = 1 потому и function test.fill_d$route_no(integer, bigint, integer) does not exist. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:22 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
RhimOzornitca, (integer, bigint, integer) вы передаете, а вот что ждет функция. p_seans_load_id integer, p_load_periods integer , p_hist integer = 1 потому и function test.fill_d$route_no(integer, bigint, integer) does not exist. боже... какой я тормоз............................................ спасибо, работает!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:23 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
как неявное приведение типов в оракл расхолаживает.....))) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:31 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
теперь она зависла на 11 минут и не отвисает ( там таблица на 2 млн записей. Просто селект из этой таблицы тоже зависает ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:42 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
в оракл та же самая штука отрабатывает быстренько. индексы все те же самые на таблице, в процедуре все то же самое ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:49 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitca, Во-первых, функции в ПЖ (тут только функции, процедур нет) очень отличаются от таковых в ORACLE. Во-вторых — надо приводить запрос и его `EXPLAIN (analyze, buffers)` когда производительность всплывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:53 |
|
преобразование типов
|
|||
---|---|---|---|
#18+
Ozornitcaтеперь она зависла на 11 минут и не отвисает ( там таблица на 2 млн записей. Просто селект из этой таблицы тоже зависает Спасибо большое конечно, но вы переоцениваете телепатические способности администраторов PostgreSQL ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2016, 21:56 |
|
|
start [/forum/topic.php?fid=53&msg=39368156&tid=1996749]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 132ms |
0 / 0 |