Re: MySql 'REPLACE'

Поиск
Список
Период
Сортировка
От Thomas Good
Тема Re: MySql 'REPLACE'
Дата
Msg-id Pine.LNX.4.05.10104250857021.26314-100000@admin.nrnet.org
обсуждение исходный текст
Ответ на MySql 'REPLACE'  (Alessio Bragadini <alessio@albourne.com>)
Список pgsql-sql
On Wed, 25 Apr 2001, Alessio Bragadini wrote:

> I am working in porting the Slash software from MySql to PostgreSQL. I
> stepped in MySql's REPLACE command (a SQL command) that to my knowledge
> is not supported by PostgreSQL and it's not standard SQL. According to
> MySql's manual:
> 
> "REPLACE works exactly like INSERT, except that if an old record in the
> table has the same value as a new record on a unique index, the old
> record is
> deleted before the new record is inserted. See section 7.21 INSERT
> syntax."
> 
> REPLACE INTO table (column, column...) VALUES (value, value...)
> 
> Has anyone had any experience about how to simulate it under PostgreSQL?
> I am using Perl and I can move most of the thing into application
> anyway.

Hi, I did this in moving a query from a deprecated* (INSERT INTO ... SELECT) 
form to two separate queries...using perl.  My statement handle for the
select cursor grabbed all of the values and then passed them to an insert.
In your case I'd guess you could grab the pkey in a $sth->fetchrow_array()
(or hashref) and do a delete & insert in a $dbh->do() series?

Good luck,
Tom

* deprecated according to SQL In A Nutshell and other SQL3 ref guides.
--------------------------------------------------------------------              SVCMC - Center for Behavioral Health
               
 
--------------------------------------------------------------------
Thomas Good                          tomg@ { admin | q8 } .nrnet.org
Database Administrator                          Phone:  718-354-5528 
Staten Island Region                            Mobile: 917-282-7359  
--------------------------------------------------------------------
Powered by:  PostgreSQL     s l a c k w a r e          FreeBSD:              RDBMS       |---------- linux      The
PowerTo Serve
 
--------------------------------------------------------------------
    /* We prefer linguistic vigor over mathematical rigor. */ 



В списке pgsql-sql по дате отправления:

Предыдущее
От: Alessio Bragadini
Дата:
Сообщение: MySql 'REPLACE'
Следующее
От: Alessio Bragadini
Дата:
Сообщение: Re: MySql 'REPLACE'