Re: Odd behavior with 'currval'
От | Melvin Davidson |
---|---|
Тема | Re: Odd behavior with 'currval' |
Дата | |
Msg-id | CANu8FizM63cA9qpoXfiTmx=c=7RB+PQTmU_6P_hJ0-VJ5chU_A@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Odd behavior with 'currval' (Adrian Klaver <adrian.klaver@aklaver.com>) |
Список | pgsql-general |
On Thu, Feb 8, 2018 at 1:27 PM, Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 02/08/2018 10:20 AM, Steven Hirsch wrote:On Thu, 8 Feb 2018, Adrian Klaver wrote:What if you do?:
SELECT * FROM udm_asset_type_definition_def_id_seq;
I get:
udm_asset_type_definition_def_id_seq 21 1 1 9223372036854775807 1 1 32 false true SELECT currval('udm_asset_type_definition_id_seq');
Arrgh my mistake, the above should have been
SELECT currval('udm_asset_type_definition_def_id_seq'); Adrian Klaver
I get:
[Code: , SQL State: 42P01] ERROR: relation "udm_asset_type_definition_id_seq" does not exist
Position: 16Also what happens if you do:
pg_dump -d db_name -U some_user -s -t udm_asset_type_definition > out.sql
This:
--
-- Name: udm_asset_type_definition; Type: TABLE; Schema: main; Owner: asset_registry_admins
--
CREATE TABLE udm_asset_type_definition (
def_id bigint DEFAULT nextval('udm_asset_type_definition_def_id_seq'::regclass) NOT NULL,
def_name character varying(32) NOT NULL,
);
ALTER TABLE udm_asset_type_definition OWNER TO asset_registry_admins;
--
-- Name: udm_asset_type_definition udm_asset_type_definition_def_name_key; Type: CONSTRAINT; Schema: main; Owner: asset_registry_admins
--
ALTER TABLE ONLY udm_asset_type_definition
ADD CONSTRAINT udm_asset_type_definition_def_name_key UNIQUE (def_name);
--
-- Name: udm_asset_type_definition; Type: ACL; Schema: main; Owner: asset_registry_admins
--
GRANT SELECT ON TABLE udm_asset_type_definition TO asset_registry_readers;
GRANT ALL ON TABLE udm_asset_type_definition TO asset_registry_writers;
--
adrian.klaver@aklaver.com
FYI, further down in Sequence Manipulation Functions is
"
"
currval
Return the value most recently obtained by
nextval
for this sequence in the current session. (An error is reported ifnextval
has never been called for this sequence in this session.) Because this is returning a session-local value, it gives a predictable answer whether or not other sessions have executednextval
since the current session did. "
--
Melvin Davidson
I reserve the right to fantasize. Whether or not you
wish to share my fantasy is entirely up to you.
I reserve the right to fantasize. Whether or not you
wish to share my fantasy is entirely up to you.

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