| From: | Armin Barth <armin(dot)barth(at)pumpen-barth(dot)de> | 
|---|---|
| To: | pgsql-de-allgemein(at)postgresql(dot)org | 
| Subject: | Mehrfacheinträge in Tabelle Korrigieren | 
| Date: | 2011-01-25 19:15:49 | 
| Message-ID: | 1295982949.3443.13.camel@mars.haus-net.de | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-de-allgemein | 
Hallo,
in eine Warenwirtschaftsanwendung (lx-office) mit PostgreSQL als
Datenbank gibt es eine Tabelle 'orderitems' mit folgendem Aufbau
                                       Tabelle »public.orderitems«
       Spalte       |             Typ             |
Attribute                       
--------------------+-----------------------------+-------------------------------------------------------
 trans_id           | integer                     | 
 parts_id           | integer                     | 
 description        | text                        | 
 qty                | real                        | 
 sellprice          | numeric(15,5)               | 
 discount           | real                        | 
 project_id         | integer                     | 
 reqdate            | date                        | 
 ship               | real                        | 
 serialnumber       | text                        | 
 id                 | integer                     | Vorgabewert
nextval(('orderitemsid'::text)::regclass)
 itime              | timestamp without time zone | Vorgabewert now()
 mtime              | timestamp without time zone | 
 pricegroup_id      | integer                     | 
 ordnumber          | text                        | 
 transdate          | text                        | 
 cusordnumber       | text                        | 
 unit               | character varying(20)       | 
 base_qty           | real                        | 
 subtotal           | boolean                     | Vorgabewert false
 longdescription    | text                        | 
 marge_total        | numeric(15,5)               | 
 marge_percent      | numeric(15,5)               | 
 lastcost           | numeric(15,5)               | 
 price_factor_id    | integer                     | 
 price_factor       | numeric(15,5)               | Vorgabewert 1
 marge_price_factor | numeric(15,5)               | Vorgabewert 1
Indexe:
    "orderitems_id_key" btree (id)
    "orderitems_trans_id_key" btree (trans_id)
Fremdschlüssel-Constraints:
    "$1" FOREIGN KEY (parts_id) REFERENCES parts(id)
Bei einer anstehenden Programmaktualisierung soll diese u.a. Tabelle
indexiert werden.
Die dazugehörige SQL-Anweisung meldet Fehler, mit dem Hinweis, das
Datensätze doppelt in dieser Tabelle vorhanden sind.
Meine händische Überprüfung zeigte mir, das Datensätze mehrfach, also 2,
3 bis 6 fach auftreten.
Diese sind in allen Spalten genau gleich, als auch in 'itime' und
'mtime'.
Wie diese entstanden sind ist derzeit nicht nachvollziehbar.
Frage:
Mit welcher Anweisung kann man diese Tabelle bereinigen, so dass jeder
Datensatz nur einmal auftaucht?
Ich bitte um eure Unterstützung.
Gruß
-- 
Armin Barth <armin(dot)barth(at)pumpen-barth(dot)de>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andreas Kretschmer | 2011-01-25 19:40:24 | Re: Mehrfacheinträge in Tabelle Korrigieren | 
| Previous Message | Andreas 'ads' Scherbaum | 2011-01-17 21:57:54 | == Wöchentlicher PostgreSQL Newsletter - 16. Januar 2011 == |