@Mr-Governor
Губернирую

Можно ли написать хранимую процедуру для SQL на другом языке (Например С++)?

В MySQL, в описании заголовка хранимой процедуры есть пункт LANGUAGE SQL, в книге Кузнецова М.В (MySQL 5.0) написано, что ожидается возможность поддержки синтаксиса PHP для написания процедур. Но пхп меня не интересует.
Так же, слышал что есть возможность написать процедуру на компилируемых языках например С, скомпилировать, и использовать SQL базой. В интернете ни чего не нашел, реально ли написать хранимку на С++ и использовать в MySQL (или других СУБД)?
  • Вопрос задан
  • 252 просмотра
Решения вопроса 3
@res2001
Developer, ex-admin
На сколько я знаю, непосредственно хранимую процедуру написать не на SQL нельзя.
Можно написать UDF (user defined function), которые можно вызывать из SQL запросов.
https://dev.mysql.com/doc/refman/8.0/en/adding-udf.html
Ответ написан
Комментировать
В MS SQL можно писать хранимку на любом дотнетовском языке (например, на Шарпе). Чтобы SQL Server нашёл хранимую процедуру достаточно выполнения указанных в документации требований.

За другие СУБД ничего пока не приходит в голову, возможно у Оракла есть что-то зеркальное для Java (никогда не видел, предполагаю).
Ответ написан
LaRN
@LaRN
Senior Developer
В MS SQL можно, вот ссылка на MSDN

https://docs.microsoft.com/ru-ru/sql/relational-da...

Расширенные хранимые процедуры

Библиотеки динамических ссылок (DLL) C или C++, написанные с использованием API-интерфейса служб SQL Server Open Data Services для расширенных хранимых процедур. API-интерфейс служб Open Data Services расширяет возможности хранимых процедур, позволяя им использовать код на C или C++.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы