|
|
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
Всем привет! В хранимке использую return setof Таблица. Изменил колонки таблиц + добавил новые. Теперь хранимка не работает (((. Не видит некоторые поля, а при удалении добавленных, пишет, что их по-прежнему 20... Можно ли запросом обновить состояние типа Taблица? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 12:21:27 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:13:04 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
V&N Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Вот если снова удалить xx и выполнить select * from get_xx(); выдает сообщение о том, что параметров должно быть 2 (хотя уже 1), даже после replace function get_xx(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:29:12 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN удалить xx . Опечатался, удалить поле v. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:31:47 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMANV&N Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Вот если снова удалить xx и выполнить select * from get_xx(); выдает сообщение о том, что параметров должно быть 2 (хотя уже 1), даже после replace function get_xx(). переконнектится надо... чтобы она процедуру перекомпиляла... если не поможет - напишите подумаю в чем беда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:33:00 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN, ничего у меня на получается Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:45:20 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
Maxim Boguk если не поможет - напишите подумаю в чем беда переподключение не помогает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:51:51 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
V&N какая версия postgresql? 8.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 13:52:29 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN , приведенный тест выполнялся на 8.4 (PostgreSQL 8.4.12 on x86_64-unknown-linux-gnu, compiled by GCC gcc (SUSE Linux) 4.6.2, 64-bit). Так что, ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:01:39 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
Вот подробная ошибка при выполнении функции: ERROR: structure of query does not match function result type DETAIL: Number of returned columns (17) does not match expected column count (20). CONTEXT: PL/pgSQL function "GetAll" line 2 at RETURN QUERY ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:02:14 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
V&N IRONMAN , приведенный тест выполнялся на 8.4 (PostgreSQL 8.4.12 on x86_64-unknown-linux-gnu, compiled by GCC gcc (SUSE Linux) 4.6.2, 64-bit). Так что, ... Попробуйте плз так: returns setof xx as $$begin return query select * from xx; end;$$ language plpgsql; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:13:58 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN, такие ошибки не от удаления/добавления столбцов, а из за Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:20:21 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMANПопробуйте плз так: returns setof xx as $$begin return query select * from xx; end;$$ language plpgsql;не буду, знаю что будет работать без ошибок, проверьте сами. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:30:53 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
V&N IRONMAN, такие ошибки не от удаления/добавления столбцов, а из за Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Вот функция: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Менял и тело на select fielld1,.......................... Может не так меняю? Напишите плз. другой рабочий вариант данной функции. очень надо (( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 14:34:13 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 15:14:35 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
p.s. если сделать такой финт ушами Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. пересоздание/переподключение не понадобится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 15:39:12 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
V&Np.s. если сделать такой финт ушами Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. пересоздание/переподключение не понадобится Попробовал и так - ошибка та же... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 16:16:22 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN, пример те что я дал вызывают ошибку? Не верю. Давайте свой код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 16:26:00 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
авторp.s. если сделать такой финт ушами Ваш то пример с таблицей хх работает, а вот с моей таблицей Table1 что-то не так.... Ее реально приплющило. Придется только пересоздавать таблицу (и то не факт что все гуд будет). Всем спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 16:26:16 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
IRONMAN, какая у Вас версия сервера? Когда-то давно была ошибка с обработкой удалённых колонок в RETURN QUERY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2012, 20:09:47 |
|
||
|
как обновить тип?
|
|||
|---|---|---|---|
|
#18+
приподниму Postgresql 9.3. воспроизвели случайно ERROR: returned record type does not match expected record type DETAIL: Number of returned columns (6) does not match expected column count (7). -- выскочило после ALTER TYPE для INOUT параметра //в других сеансах после принудительного CREATE OR REPLACE -- дуло исчезло. // забавно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2014, 12:23:17 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=37928293&tid=1998339]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
163ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 443ms |

| 0 / 0 |
