Re: help with a procedure

From: Seref Arikan <serefarikan(at)gmail(dot)com>
To: Carlos Carcamo <eazyduiz(at)gmail(dot)com>, PG-General Mailing List <pgsql-general(at)postgresql(dot)org>
Subject: Re: help with a procedure
Date: 2014-06-05 16:13:30
Message-ID: CA+4Thdo5o=+PD8ThNghGTgMrxUb+q2W4aTDNRv9_hpwonXZc5A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Carlos,
When you say procedures, do you mean calling a stored procedure you'll
write from php? Or executing the individual INSERT from php sequentially?
For the first scenario, you'd need to write a postgresql stored procedure
(I suggest you google: PL/pgSQL tutorial) and call the from php. For the
second, well, it is exactly what I said before: you'll need to open a
connection to postgres, execute your statements under a transaction and
commit. I'd suggest you either search for php and postgres or ask this to a
php mail group. Your goal here appears to be understanding how to call
postgres from php.

Regards
Seref

On Thu, Jun 5, 2014 at 5:03 PM, Carlos Carcamo <eazyduiz(at)gmail(dot)com> wrote:

> Thanks for answering...
> I'm using php with postgresql 9.1, I have never used procedures with php,
> I'm new with postgresql
>
>
> 2014-06-05 9:45 GMT-06:00 Seref Arikan <serefarikan(at)gmail(dot)com>:
>
> Hi Carlos,
>> Unless I'm missing something here, your queries are probably being called
>> from a programming language (java/c# etc) and your database access api
>> should support transactions. If you perform both operations under the same
>> db transaction and commit your transaction things should be fine. If there
>> is a problem with the first INSERT, your api should throw an exception and
>> you won't be able to commit the transaction (you may/may not need to call
>> rollback in your catch block), so it'll either be both calls executed or
>> none.
>>
>> You may want to read about how db transactions are handled in your
>> programming environment.
>>
>> Regards
>> Seref
>>
>>
>>
>> On Thu, Jun 5, 2014 at 4:36 PM, Carlos Carcamo <eazyduiz(at)gmail(dot)com>
>> wrote:
>>
>>>
>>> 2014-06-05 9:32 GMT-06:00 Carlos Carcamo <eazyduiz(at)gmail(dot)com>:
>>>
>>> Hi everyone, I wonder if you could help me with a procedure that I would
>>>> like to perform in postgresql.
>>>>
>>>> I have an insert query like this:
>>>>
>>>> INSERT INTO products (product_id, description, price, qty, ...) values
>>>> ('01', 'some description', 10.15, 5, ...)
>>>>
>>>> then if there is no problem, perform another query like:
>>>>
>>>> INSERT INTO store(store_id, description, price, qty, ...) values ('02',
>>>> 'some description', 10.15, 5, ...)
>>>>
>>>> So the second query depends of the first query, if the first one
>>>> succeed the second will perform the second insert
>>>>
>>>> I would like to do something like:
>>>>
>>>> SELECT myProcedure(product_id, p_description, price, qty, store_id,
>>>> store_description );
>>>>
>>>> waiting for a response from procedure, maybe true or false.
>>>>
>>>> Thanks in advance...
>>>>
>>>>
>>>>
>>>> --
>>>> "El desarrollo no es material es un estado de conciencia metal"
>>>>
>>>
>>> Sorry, the second query looks like:
>>> INSERT INTO store(store_id, description, product_id, price, qty, ...)
>>> values ('02', 'some description', '01', 10.15, 5, ...)
>>>
>>> --
>>> "El desarrollo no es material es un estado de conciencia metal"
>>>
>>
>>
>
>
> --
> "El desarrollo no es material es un estado de conciencia metal"
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Seref Arikan 2014-06-05 16:14:23 Re: help with a procedure
Previous Message Bhushan Pathak 2014-06-05 16:11:45 Re: PostgreSQL 9.2.4 + CentOS 6.5 64 bit - segfault error in initdb