У меня есть сценарий, который падает, если какая-либо из процедур, которые он пытается создать, уже существует. Как я могу проверить/удалить, если эта процедура уже создана?Процедура iSeries SQL - проверить, существует ли уже
ответ
Я предположил бы, что-то вдоль линий:
IF EXISTS
(
SELECT *
FROM SYSPROCS
WHERE SPECIFIC_SCHEMA = ???
AND SPECIFIC_NAME = ???
AND ROUTINE_SCHEMA = ???
AND ROUTINE_NAME = ???
)
DROP PROCEDURE ???
Я не знаю, если вы на самом деле нужна SPECIFIC_ * информация или нет, и я не знаю, как обращаться со случаями, когда у вас есть две процедуры с тем же именем, но с разными сигнатурами вызовов, но, надеюсь, это поможет вам на правильном пути.
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[Procedure_Name]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
DROP PROCEDURE [dbo].[Procedure_Name]
Я думаю, что это поможет вам
Не для DB2 for iSeries, который задан, так как вопрос помечен тегом ibm-midrange. – WarrenT 2012-03-06 23:46:22
Вы можете проверить существование таким образом (обратите внимание - убедитесь, что дела):
SELECT *
FROM QSYS2/PROCEDURES
WHERE PROCNAME LIKE 'your-procedure-name'
AND PROCSCHEMA = 'your-procedure-library'
DROP PROCEDURE xxx ; CREATE PROCEDURE XXX . . . ;
Включите DROP PROCEDURE
в качестве первый оператор в скрипте. Если вы запускаете с RUNSQLSTM, используйте ERRLVL (20), чтобы разрешить DROP. Если вы запустите «Запуск сценариев SQL», используйте объект «Игнорировать», который не найден «на DROP».
- 1. Как проверить, существует ли хранимая процедура в SQL Azure?
- 2. Как проверить, существует ли хранимая процедура на сервере sql
- 3. Как проверить, существует ли процедура в пакете?
- 4. Как обнаружить, что хранимая процедура уже существует
- 5. Как проверить, существует ли хранимая процедура до ее создания
- 6. Как проверить, существует ли уже имя экземпляра
- 7. Как проверить, существует ли хранимая процедура на PostgreSQL?
- 8. проверить, если значение уже существует
- 9. python-couchdb: Как проверить, существует ли база данных уже существует
- 10. Как проверить, существует ли имя пользователя уже с PHP/MYSQL
- 11. Mysqli проверить, если имя пользователя уже существует
- 12. HTML PHP - Как проверить, существует ли уже имя пользователя
- 13. Процедура Oracle, чтобы проверить, существует ли файл на веб-сервере
- 14. Сохраненная процедура SQL Server Проверьте, существует ли запись перед вставкой
- 15. Как проверить идентификатор пользователя уже существует
- 16. Oracle PL/SQL: как определить, выполняется ли процедура УЖЕ работает?
- 17. Как проверить, существует ли таблица в SQL
- 18. PHP проверить, существует ли запись в SQL
- 19. Как проверить, существует ли ограничение SQL Server?
- 20. способ проверить, существует ли строка sql?
- 21. SQL ошибка «core_resource» уже существует
- 22. проверить, если экземпляр excel уже существует Vb.net
- 23. Проверить для пользователя в iSeries rmtcmd
- 24. Как проверить, если идентификатор уже существует - CodeIgniter
- 25. Проверьте, существует ли запись, если она добавляет 1 (внутренняя процедура)
- 26. Как проверить, существует ли объект класса уже на PHP?
- 27. Как проверить, существует ли уже существующая в ToolStripMenuItem.DropDownItems?
- 28. Наиболее подходящий способ проверить, существует ли уже существующее значение
- 29. Как проверить, существует ли массив numpy уже или нет?
- 30. Лучший способ проверить, есть ли Joomla! 3.4.0 статья уже существует
IBM i 7.1 поддерживает оператор Create or Replace Procedure, который отбросит процедуру, если она уже существует, и затем создайте новую процедуру. – Dave 2011-04-07 16:49:33