Thread: Can I call unix/linux commands within plsql?

Can I call unix/linux commands within plsql?

From
Timmy 鄧添喜
Date:
Hello,
 
I'm new to Postgresql/plsql. Can anyone tell me that whether I can call unix/linux commands within plsql or not? I need it because some functions can not be provided by the PostgreSQL server itself such as email.
 
Thank you!!
 
Timmy

R: Can I call unix/linux commands within plsql?

From
"Andrea Suisani"
Date:
i'm not sure if is the right answer to your question
anyway from psql prompt you can call a shell command by
\! <cmd>

andrea

ps I apologise my terrible english.



Re: Can I call unix/linux commands within plsql?

From
Chris Albertson
Date:
There are two ways I can think of

1) Write a Perl, Pyton, C, or C++ program that calls
PostgreSQL and also makes the system calls you need.

2) Write a function (see man create_function) in C.
your C function can do anything.

I'm guessing you should be doing #1.  But tell us your
application if you want better advice.


--- Timmy �H�K�� <timmy.tang@gaojin.com> wrote:
> Hello,
>
> I'm new to Postgresql/plsql. Can anyone tell me that whether I can
> call unix/linux commands within plsql or not? I need it because some
> functions can not be provided by the PostgreSQL server itself such as
> email.
>
> Thank you!!
>
> Timmy
>


=====
Chris Albertson
  Home:   310-376-1029  chrisalbertson90278@yahoo.com
  Cell:   310-990-7550
  Office: 310-336-5189  Christopher.J.Albertson@aero.org

__________________________________________________
Do You Yahoo!?
Check out Yahoo! Shopping and Yahoo! Auctions for all of
your unique holiday gifts! Buy at http://shopping.yahoo.com
or bid at http://auctions.yahoo.com

Re: Can I call unix/linux commands within plsql?

From
Jason Earl
Date:
I think that there is a plshell implementation rolling around
somewhere, but what I generally do is launch a cron script every so
often that can then check up on PostgreSQL.  For example, let's say
you have a table emails_to_send.  Cron can wake up a script that sends
your emails for you, and the script is free to use PostgreSQL's
excellent transaction support (something a shell script called from
PostgreSQL cannot really do).

Jason

Timmy 鄧添喜 <timmy.tang@gaojin.com> writes:

> Hello,
>
>  
>
> I'm new to Postgresql/plsql. Can anyone tell me that whether I can call
> unix/linux commands within plsql or not? I need it because some functions can
> not be provided by the PostgreSQL server itself such as email.
>
>  
>
> Thank you!!
>
>  
>
> Timmy

Re: Can I call unix/linux commands within plsql?

From
Stephan Szabo
Date:
On Thu, 13 Dec 2001, [big5] Timmy �H�K�� wrote:

> Hello,
>
> I'm new to Postgresql/plsql. Can anyone tell me that whether I can
> call unix/linux commands within plsql or not? I need it because some
> functions can not be provided by the PostgreSQL server itself such as
> email.

Not directly.  You can do this from C, but you need to be careful,
because anything you do outside of the database is not transaction
safe (ie, if something rolls back the transaction after the function
is called, the outside things are still done even though any data
changes are not recorded).


Re: Can I call unix/linux commands within plsql?

From
Philip Hallstrom
Date:
Missed the first post, and take what Stephen says as important regarding
transactions ,etc... but here's a link to a unix shell language handler
for postgres.

http://www.ca.postgresql.org/~petere/plsh.html

Never used it myself, but there it is.

I've also seen (maybe in contrib?  maybe somewhere else) a sendmail
function (in C) that allows you to send email from within plsql.  If you
search the archives you'll find it.

-philip

On Thu, 13 Dec 2001, Stephan Szabo wrote:

>
> On Thu, 13 Dec 2001, [big5] Timmy �H�K�� wrote:
>
> > Hello,
> >
> > I'm new to Postgresql/plsql. Can anyone tell me that whether I can
> > call unix/linux commands within plsql or not? I need it because some
> > functions can not be provided by the PostgreSQL server itself such as
> > email.
>
> Not directly.  You can do this from C, but you need to be careful,
> because anything you do outside of the database is not transaction
> safe (ie, if something rolls back the transaction after the function
> is called, the outside things are still done even though any data
> changes are not recorded).
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>


Re: Can I call unix/linux commands within plsql?

From
Vince Vielhaber
Date:
On Thu, 13 Dec 2001, Philip Hallstrom wrote:

> Missed the first post, and take what Stephen says as important regarding
> transactions ,etc... but here's a link to a unix shell language handler
> for postgres.
>
> http://www.ca.postgresql.org/~petere/plsh.html
>
> Never used it myself, but there it is.
>
> I've also seen (maybe in contrib?  maybe somewhere else) a sendmail
> function (in C) that allows you to send email from within plsql.  If you
> search the archives you'll find it.

That's pgMail.  You'll find a link to it on the Interfacing page on the
website.



Vince.
--
==========================================================================
Vince Vielhaber -- KA8CSH    email: vev@michvhf.com    http://www.pop4.net
         56K Nationwide Dialup from $16.00/mo at Pop4 Networking
        Online Campground Directory    http://www.camping-usa.com
       Online Giftshop Superstore    http://www.cloudninegifts.com
==========================================================================