Delphi-PRAXiS
Seite 5 von 5   « Erste     345   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Einfügen über externalTabelle funktioniert nicht richtig (https://www.delphipraxis.net/179327-einfuegen-ueber-externaltabelle-funktioniert-nicht-richtig.html)

blutigerAnfänger 12. Sep 2014 12:08

AW: Einfügen über externalTabelle funktioniert nicht richtig
 
Zitat:

Zitat von Dejan Vu (Beitrag 1272369)
Wieso willst Du in einer externen Tabelle denn überhaupt so eine ID haben?

Möchte ich gar nicht. Ich möchte eine Interne Tabelle mit ID haben.

Zitat:

Zitat von blutigerAnfänger (Beitrag 1272337)
Das nachträgliche Einfügen der ID Tabelle funktioniert zwar, aber der Trigger und der Generator lassen sich nicht zum laufen bringen(Trigger nicht einmal erzeugen).

Zitat:

Zitat von Dejan Vu (Beitrag 1272369)
Nochmal: Die 'EXTERNAL TABLE' Funktionalität ist dazu da, um auf externe Dateien zugreifen zu können. Du sollst die tunlichst in eine andere Tabelle überführen, wo Du dann deine Trigger, AutoInc-Spalten, Integer, Numeric, foobars und sonst was für Datentypen hast.

Was spricht denn dagegen, wenn der Vorbereitungsteil ein "Id" Feld (es ist doch nur ein gewöhnlicher Zähler) miterstellt. Dafür brauche ich keine Trigger etc. mehr erstellen, was ja nachträglich offenbar auch nicht funktioniert.

jobo 12. Sep 2014 12:49

AW: Einfügen über externalTabelle funktioniert nicht richtig
 
Es spricht nichts dagegen, außer dass es etwas mühsam ist.

Wie wärs mit>
Code:

CREATE GENERATOR gen_t1_id; -- heute nennt man das wohl auch in FB sequence
SET GENERATOR gen_t1_id TO 0;

create table myDestTable
(
id integer not null,
field1 varchar(20) not null
..
field10 sometype
..
fieldN sometype
);

insert into myDestTable (id, ..field10, ..fieldN)
select GEN_ID(GEN_T1_ID, 1), ..ContentForField10, ..ContentForFieldN
  from myExternalTable
[where condition]
Ergibt eine forlaufende ID, Datei übergreifend, ohne Trigger

p.S.: mit Trigger gehts sicher auch, hier Quelle / Link: http://www.firebirdfaq.org/faq29/

Dejan Vu 12. Sep 2014 12:56

AW: Einfügen über externalTabelle funktioniert nicht richtig
 
Wie jobo sagte, spricht nicht viel dagegen, außer eben (und das ist mein Hauptargument, neben der Tatsache, das man die zu importierende Datei extra anfassen muss): Es ist verwirrend, über Klimmzüge und Tricks ans Ziel zu gelangen. Heute feixt Du dir noch einen, weil Du so einen tollen Trick gefunden hast, aber morgen wunderst Du dich oder dein Kollege, was das ganze soll? :gruebel: :wall:

Daher: Keep it simple (KISS)
Ich würde sogar sagen : KIASAP (Keep it as simple as possible)
oder MESEWENIG 'mach es so einfach wie es nur irgendwie geht' :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:41 Uhr.
Seite 5 von 5   « Erste     345   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz