Die Suche ergab 188 Treffer

von bfuerchau
Fr 14. Aug 2020, 21:21
Forum: Allgemein
Thema: Abhängigkeiten in Triggern - welche Felder werden geschrieben?
Antworten: 2
Zugriffe: 29

Re: Abhängigkeiten in Triggern - welche Felder werden geschrieben?

Wobei dies durchaus schwierig wird, da man Felder umbenennen kann und Views sowie Instead-Of-Trigger dies wiederum verbergen können. Immerhin ist ja nun auch noch dynamic SQL erlaubt. Unter bestimmten Restriktionen sind auch Views update fähig.
von bfuerchau
Fr 14. Aug 2020, 21:19
Forum: Praxiseinsatz
Thema: Löschen von Datensätzen innerhalb eines Bereiches
Antworten: 7
Zugriffe: 52

Re: Löschen von Datensätzen innerhalb eines Bereiches

Das hängt von der Implemantation ab. Richtig ist das nicht (SQL-Standard), da eine Where-Klausel immer den aktuellen Satz betreffen muss mnit ggf. Wiederholng der Where-Klausel. Ich arbeite viel mit der DB2/400 (DB2 for i), da ist das nur u.U. so. Wenn man sich nicht darauf verlassen kann, taigt das...
von bfuerchau
Do 13. Aug 2020, 15:12
Forum: Praxiseinsatz
Thema: Löschen von Datensätzen innerhalb eines Bereiches
Antworten: 7
Zugriffe: 52

Re: Löschen von Datensätzen innerhalb eines Bereiches

Sobald eine Where-Klausel beim Delete verwendet wird, muss diese je Zeile geprüft werden. Ein "where column = any (select ...)" ist i.Ü. identisch zu "where column in (select ...)". Beide prüfen, ob einer der gefunden Werte dem Vergleich entspricht. Erst wenn ein anderer Operator verwendet wird komn...
von bfuerchau
Mi 12. Aug 2020, 21:32
Forum: Praxiseinsatz
Thema: Löschen von Datensätzen innerhalb eines Bereiches
Antworten: 7
Zugriffe: 52

Re: Löschen von Datensätzen innerhalb eines Bereiches

Ich denke, das must du in einer Prozedur selber erledigen (geht auch per Execute Block). Das Problem ist, das der Select je Satz ausgeführt wird, also nicht statisch ist. Nach dem Delete des 1 Satzes liefert der Select wieder 10 Zeilen. In einer Prozedur kannst du dir diese 10 Id's merken und anschl...
von bfuerchau
Fr 24. Jul 2020, 15:10
Forum: Praxiseinsatz
Thema: Array Datentyp
Antworten: 8
Zugriffe: 748

Re: Array Datentyp

Allerdings wird das in der DB nicht viel ausmachen, da die Firebird grundsätzlich die Daten sowieso komprimiert und komprimierte Daten u.U. zu einer minimalen Verlängerung führen. Der Effekt ist aber, dass du den Blob mit dem 1,8-Fachen füllen kannst. Beachte auch, dass es verschieden effektive Komp...
von bfuerchau
Do 23. Jul 2020, 15:49
Forum: Praxiseinsatz
Thema: Array Datentyp
Antworten: 8
Zugriffe: 748

Re: Array Datentyp

16KB ist korrekt und aus Performancesicht optimal (Indizes). Ab 3.0 gehts dann wohl auch höher. Arrays sind aus SQL-Sicht eher kontraproduktiv, da sie sich nicht einfach in der Whereklausel durchsuchen und indizieren lassen. Eine Normierung der Datenbank (also 2. Tabelle mit Rownumber) wäre da sinnv...
von bfuerchau
Mi 15. Jul 2020, 14:07
Forum: Praxiseinsatz
Thema: Firebird SQL - Prozeduren: Datensatz kann von einem Programm nicht gelöscht werden
Antworten: 3
Zugriffe: 331

Re: Firebird SQL - Prozeduren: Datensatz kann von einem Programm nicht gelöscht werden

Trigger können nicht manuell ausgelöst werden. DIe Definition ist dafür zuständig: before/after insert/update/delete. "Der Datensatz wurde schon von einem anderen Benutzer verarbeitet." ist keine Meldung der Firebird sondern deines verwendeten Frameworks. Wenn du (z.B. in C#) ein DataTable-Objekt un...
von bfuerchau
Mi 15. Jul 2020, 13:38
Forum: Praxiseinsatz
Thema: Default Character Set
Antworten: 7
Zugriffe: 507

Re: Default Character Set

Dies ergibt sich eigentlich von selber. Der Default wird angewendet beim Create Table/Domain. Danach gilt nur noch das, was in der Domain steht ( jedes Feld verweist auf eine Domain), da der Charset kopiert wird. Du kannst natürlich den Default auf NONE setzen. Dies hat keine Auswirkungen solange du...
von bfuerchau
Di 14. Jul 2020, 16:47
Forum: Praxiseinsatz
Thema: Default Character Set
Antworten: 7
Zugriffe: 507

Re: Default Character Set

Willkommen in der Welt der vielen Zeichensätze. Das schöne daran ist auch noch, dass außer native C++ alle Sprachen bzgl. Strings sowieso in Unicode (UCS2) arbeiten. Wenn also der Treiber ISO_8859_1 oder WIN1252 nimmt, convertiert dieser erst mal UCS2 in ISO_8859_1 und im 2. Schritt dann die DB in d...
von bfuerchau
Di 14. Jul 2020, 16:39
Forum: Anfänger
Thema: Update Preise beim Artikel
Antworten: 9
Zugriffe: 4239

Re: Update Preise beim Artikel

Nimm für die Berechnung

coalesce(Feld, 0)