Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Trigger zum updaten einer Tabelle- aber wie?

Mitglied: xhutzelx

xhutzelx (Level 1) - Jetzt verbinden

29.08.2007, aktualisiert 01.09.2007, 3255 Aufrufe, 2 Kommentare

Benötige Hilfe bei der Programmierung eines Triggers

Stand der Dinge, ich habe zwei Tabellen:

Tabelle_Maschine und Tabelle_Individual

In beiden Tabellen existiert ein Feld ClientID, das nur eindeutige Werte enthalten (Primary Key) und nicht Null sein darf.

Außerdem existieren in Tabelle_Maschine die Spalten Manufacturer und Serial.
In Tabelle_Individual existieren außerdem die Felder Hersteller und SerienNr.

Das Problem ist, dass die Anwendung, die diese SQL- Tabellen nutzt, Werte nur automatisch in Tabelle_Maschine schreibt, aber nicht automatisch in Tabelle_Individual.

Die Spalten von Tabelle_Maschine werden auch nicht komplett befüllt, da die Anwendung bestimmte Werte nicht ausliest und stattdessen 00000 oder gar nichts reinschreibt.

Als Ersatz werden nun Werte in Tabelle_Individual manuell eingetragen, denn das sind die Werte, für die Zeilen in Tabelle_Maschine, in denen die Nullen oder gar nichts steht.

In Tabelle_Individual sind nicht zwangsläufig genauso viele Zeilen, wie in Tabelle_Individual vorhanden. Eher weniger.

Ich hoffe, das ist nun klar. In Tabelle_Maschine kann ich nichts manuell eintragen, da nach einem Daten-Scan diese Einträge wieder überschrieben würden.

Am einfachsten wäre es nun, wenn die Tabelle_Maschine zwar noch existieren würde, aber deren Datenzeilen, die für die Felder Manufacturer und Serial UNGLEICH 00000 oder nicht leer sind, in Tabelle_Individual geschrieben würden.
Und zwar die Werte von Manufacturer in Händler und die von Serial in SerienNr.

Aber aufgepasst: Es existieren schon Datensätze in der Tabelle_Individual.

D.h., es müssen zunächst die entsprechenden Felder in Tabelle_Individual befüllt werden, die mit der ClientID der Tabelle_Machine identisch sind. Als nächstes müssen die Datensätze mit der ClientID hinzugefügt werden, für die in Tabelle_Individual noch keine ClientID existiert, und nur die oben genannten Felder, wenn diese UNGLEICH 00000 und NICHT LEER sind.

Besser wäre es gewesen, der Trigger hätte von Anfang an schon existiert, dann hätte der wohl ein AFTER INSERT, UPDATE sein können.
Oder kann ich jetzt einen erstellen, der mir sofort und auch zukünftig die Werte wie oben beschrieben rüberschreibt?

Ich hoffe, es ist irgendwie klar, was ich machen will... wäre für einen kompletten Trigger dankbar, da kein SQL-Profi.
LG
Mitglied: pi314
29.08.2007 um 11:37 Uhr
Hi,

um was für ein DB handelt es sich denn?
Oracle, MySQL, ...
Bitte warten ..
Mitglied: Desperado
01.09.2007 um 08:17 Uhr
trigger on tbl_machine 4 update/insert

-- Update wird nur ausgeführt, wenn ID vorhanden
update tbl_individual set hersteller = b.manufacturer from tbl_individual a, inserted b
where a.clientid = b.clientid and b.manufacturer is not null and b.manufacturer <> '00000'
update tbl_individual set seriennr = b.serial from tbl_individual a, inserted b
where a.clientid = b.clientid and b.serial is not null and b.serial <> '00000'
--Insert
insert into tbl_indivdual (clientid, hersteller, seriennr) select clientid, manufacturer, serial from
inserted where manufacturer is not null and serial is not null and manufacturer <> '00000'
and serial <> '00000'
and b.clientid not in (select clientid from tbl_individual)
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Suchen mit 2 Werten (x,y) in einer Tabell - Bereich.vergleich gibt nur Wahr oder Falsch aus

gelöst Frage von ArafatMicrosoft Office2 Kommentare

Hallo Zusammen, ich suche in einem 2. Tabellenbatt nach über 2 Werte x und y nach einem 3. Wert. ...

Neue Wissensbeiträge
Internet

EU Urheberrechtsreform: Eingriff in die Internetkultur

Information von Frank vor 7 StundenInternet1 Kommentar

Liebe Besucherin, lieber Besucher, warum erscheint das obere Banner in allen Beiträgen? Aus Protest gegen Teile der geplanten EU-Urheberrechtsreform ...

Windows Server
Windows Backup - FilterManager Event 3
Tipp von NixVerstehen vor 1 TagWindows Server

Hallo zusammen, ich bin kein gelernter ITler und auch beruflich nicht in dem Feld tätig. Wir setzen in unserem ...

Windows 10

Windows 10 - Programme laufen schneller, wenn Sie mit Administratorrechten ausgeführt werden

Erfahrungsbericht von 1Werner1 vor 2 TagenWindows 1013 Kommentare

Moin, das wollte ich erst nicht glauben, aber es ist so. Wenn Ihr ein Programm mit Administratorrechten unter Windows ...

Sicherheits-Tools
Putty hat heftige Bugs korrigiert!
Information von Lochkartenstanzer vor 3 TagenSicherheits-Tools8 Kommentare

Moin, Wie man aus herauslesen kann, sind in den Versionen vor 0.71 gravierende Bugs, die es angeraten erscheinen lassen, ...

Heiß diskutierte Inhalte
Server-Hardware
Kompatibilität Tray für HP Proliant DL385 G10 vs. G8, G9
Frage von chris123Server-Hardware19 Kommentare

Hallo, weiß einer der hier anwesenden, ob die Trays für 2,5 " HDDs zwischen einem DL 385 G10 und ...

Outlook & Mail
Office 365 mit Email-Profil installieren
gelöst Frage von 139221Outlook & Mail18 Kommentare

Hallo, kurz zu meiner Person: Vor ungefahr 10 Jahren habe ich eine Umschuldung zum Fachinformatiker für Systemintegration gemacht aber ...

Server-Hardware
Server Hardwareempfehlung für Projekt
gelöst Frage von heax22Server-Hardware12 Kommentare

Hallo zusammen, ich bin auf der Suche nach einer geeigneten Server Plattform um unter Hyper-V einen virtuellen Server 2016 ...

E-Mail
Wie funktionieren DNS Blacklisten?
gelöst Frage von WinLiCLIE-Mail12 Kommentare

Ich frage mich schon seit längerem, woher genau die Blacklisten für die Mailserver die Domains und Ips kennen die ...