Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Grundsatzproblem



--On Freitag, Dezember 09, 2005 04:41:43 +0100 Friedrich Stockebrand <Friedrich(dot)Stockebrand(at)t-online(dot)de> wrote:

Hallo,


Servus

z.Z. arbeite ich mich in PostgreSQL ein und versuche eine kleine
Datenbank, die bisher unter MySql lief, auf PostgreSQL umzuschreiben.

Installiert ist die aktuelle Windows-Version von PostgreSQL unter WinXP.

Im wesentlichen geht es um die 3 nachfolgenden Funktionen:

--------------------------------------

CREATE OR REPLACE FUNCTION create_table_buchungsdaten()
  RETURNS void

AS $BODY$

DECLARE
    v_count integer;

BEGIN

  SELECT INTO  v_count count(*) FROM pg_tables  where tablename =
'buchungsdaten';

  IF v_count = 0 THEN

    CREATE TABLE buchungsdaten
       (
       LIKE Journal INCLUDING DEFAULTS
       );

    ALTER TABLE  buchungsdaten
    ADD   id   serial;

    ALTER TABLE  buchungsdaten
    ADD   stamp_created  timestamp default now();

    COMMENT ON TABLE buchungsdaten IS 'Buchungsdaten ohne Storno';

  ELSE

    TRUNCATE TABLE buchungsdaten;
    SELECT  setval (buchungsdaten_id_seq, 1, false);


Hier ist der Fehler: Der Sequence muss über seinen Namen referenziert werden und kann nicht als Bezeichner verwendet werden, also:

SELECT  setval ('buchungsdaten_id_seq'::text, 1, false);

oder in 8.1 neu:

SELECT  setval ('buchungsdaten_id_seq'::regclass, 1, false);

  END IF;

END;

$BODY$

LANGUAGE 'plpgsql' VOLATILE;



--
 Thanks

                   Bernd




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group