Хранимые процедуры в Python для PostgreSQL

мы все еще довольно плохо знакомы с Пост-ГРЭС и приехали из Microsoft Sql Server.

Мы желаем записать некоторые хранимые процедуры теперь. Ну, после попытки получить что-то более сложное, чем a hello world для работы в pl/pgsql мы решили, что лучше, если мы собираемся выучить новый язык, мы могли бы также изучить Python, потому что мы получили тот же запрос, работающий в нем приблизительно за 15 минут (примечание, ни один из нас на самом деле не знаю Python).

Таким образом, у меня есть некоторые вопросы об этом по сравнению с pl/psql.

  1. pl/Pythonu медленнее, чем pl/pgsql?
  2. Действительно ли там кто-либо - вид "хорошей" ссылки для того, как записать хорошие хранимые процедуры с помощью него? Пять коротких страниц в документации Пост-ГРЭС действительно не говорят нам достаточно.
  3. Что относительно подготовки к запросу? Это должно всегда использоваться?
  4. Если мы будем использовать SD и массивы GD для большого количества планов запросов, то это будет когда-либо становиться слишком полным или оказывать негативное влияние на сервер? Это автоматически удалит старые значения, если это станет слишком полным?
  5. Есть ли какая-либо надежда на него становящийся доверяемым языком?

Кроме того, наше использование хранимой процедуры чрезвычайно легко. Прямо сейчас мы только имеем 4, но мы все еще пытаемся преобразовать небольшие биты кода от SQL-сервера определенный синтаксис (такие как переменные, которые не могут использоваться в Пост-ГРЭС за пределами хранимых процедур),

11
задан S.Lott 26 January 2010 в 21:10
поделиться

1 ответ

Почему вы не используете метод, используемый стандартной библиотекой C? О, подожди ...

-121--3311432-
  1. зависит от того, какие операции вы делаете.
  2. Ну, комбинируйте это с помощью общей документации Python, и это о том, что у вас есть.
  3. нет. Опять же, зависит от того, что вы делаете. Если вы будете только запускать запрос один раз, нет смысла готовить его отдельно.
  4. Если вы используете постоянные соединения, это может. Но они очищаются всякий раз, когда соединение закрыто.
  5. Вполне вероятно. Песочница разбита в Python и Afaik никто не очень заинтересован в его исправлении. Я слышал, как кто-то сказал, что Python-on-Parrot может быть самым жизнеспособным способом, как только у нас будет PL / Parrot (который мы еще не являемся).

Нижняя линия, хотя - если ваши хранимые процедуры собираются работать в базе данных, используйте PL / PGSQL. Используйте только PL / Python, если вы собираетесь делать без баз данных, такие как разговор с внешними библиотеками.

9
ответ дан 3 December 2019 в 10:26
поделиться
Другие вопросы по тегам:

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