Обсуждение: sequence value of the record just inserted / DBI

Поиск
Список
Период
Сортировка

sequence value of the record just inserted / DBI

От
Ben Kim
Дата:
I hope it is OK to ask the question here.

Perl's DBI has the following function.

$rv = $dbh->last_insert_id($catalog, $schema, $table, $field);
"Returns a value 'identifying' the row just inserted, if possible."

I wonder what this $catalog is in this context. It's supposed to be
metadata, and CREATE USER has CATALOG|NOCATALOG option, but what would be
$catalog value for a user table in this context?


Thanks in advance.

Ben Kim



Re: sequence value of the record just inserted / DBI

От
Jeremy Buchmann
Дата:
On Apr 14, 2004, at 10:53 AM, Ben Kim wrote:

>
> I hope it is OK to ask the question here.
>
> Perl's DBI has the following function.
>
> $rv = $dbh->last_insert_id($catalog, $schema, $table, $field);
> "Returns a value 'identifying' the row just inserted, if possible."
>
> I wonder what this $catalog is in this context. It's supposed to be
> metadata, and CREATE USER has CATALOG|NOCATALOG option, but what would
> be
> $catalog value for a user table in this context?

Ben,

I don't know what $catalog is supposed to be, but you may have better
luck on the DBI-Users list or the PGSQL-INTERFACES list.


--Jeremy


Re: sequence value of the record just inserted / DBI

От
"Greg Sabino Mullane"
Дата:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


> Perl's DBI has the following function.
>
> $rv = $dbh->last_insert_id($catalog, $schema, $table, $field);
> "Returns a value 'identifying' the row just inserted, if possible."
>
> I wonder what this $catalog is in this context. It's supposed to be
> metadata, and CREATE USER has CATALOG|NOCATALOG option, but what would be
> $catalog value for a user table in this context?

DBD::Pg does not support last_insert_id yet. It's so new, that none
of the DBDs support it yet. When it is implemented in DBD::Pg, the catalog
option will be ignored, as PostgreSQL has no catalog concept (nor do most
other RDBM systems). You will notice that most of the other DBI functions
have the same $catalog, $schema, $table ... design. In that context,
catalog is meant as a higher-level than the schema: you can think of it
as a collection of schemas.

Keep in mind the last_insert_id() function is mostly meant as a portability
helper: unless you are porting your script to other databases, just
use nextval (number 2 in your other email) which is perfectly safe.

- --
Greg Sabino Mullane greg@turnstep.com
PGP Key: 0x14964AC8 200404142155

-----BEGIN PGP SIGNATURE-----

iD8DBQFAfevzvJuQZxSWSsgRAo1dAJ4s/bYbJjubg9IaC91PlpUF5DFX1wCgxgTa
IMLESlXMRgNm+TLbYFV2+zQ=
=OScZ
-----END PGP SIGNATURE-----