zusammengesetzter Primary Key mit Deleted-Flag [英] zusammengesetzter Primary Key mit Deleted-Flag

查看:117
本文介绍了zusammengesetzter Primary Key mit Deleted-Flag的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Knifflige Frage zu Datenbanken:


Es gibt Tabellen,die mehr als ein PK-Feld haben;还有zBMAID和GMID。

Soweit ok。


Nehmen wir an,aus dieser Tabelle sollen keine Datens?tze physikalisch

gel?scht werden,sondern der L?schstatus durch ein Datenfeld GELOESCHT

angegeben werden。 Hat das Feld den Wert 0,dann ist der Datensatz nicht

gel?scht;回答他们的问题。

Dann funktioniert der PK nicht mehr,denn es k?nnen ja durchaus mehrere

Datens?tze mit gleicher MAID和GMID vorhanden sein。 Aufnehmen von

GELOESCHT in den PK geht theoretisch,ist aber gef?hrlich(da

Flie?kommafeld,und wer wei?schon,ob 0 immer gleich 0 ist .. 。)。


Hat jemand eine Idee?


SWE @ KP

Knifflige Frage zu Datenbanken:

Es gibt Tabellen, die mehr als ein PK-Feld haben; also z.B.MAID und GMID.
Soweit ok.

Nehmen wir an, aus dieser Tabelle sollen keine Datens?tze physikalisch
gel?scht werden, sondern der L?schstatus durch ein Datenfeld GELOESCHT
angegeben werden. Hat das Feld den Wert 0, dann ist der Datensatz nicht
gel?scht; ansonsten steht der Zeitpunkt (Tag und Uhrzeit) der L?schung drin.
Dann funktioniert der PK nicht mehr, denn es k?nnen ja durchaus mehrere
Datens?tze mit gleicher MAID und GMID vorhanden sein. Aufnehmen von
GELOESCHT in den PK geht theoretisch, ist aber gef?hrlich (da
Flie?kommafeld, und wer wei? schon, ob 0 immer gleich 0 ist...).

Hat jemand eine Idee?

SWE@KP

推荐答案



?ndere den prim key auf ein surrogate,der nichts mit den Daten zu tun hat

zB id整数不为null


MAID和GMID sind dann 2 normale Felder


?ndere den prim key auf ein surrogate, der nichts mit den Daten zu tun hat
z.B. id integer not null

MAID und GMID sind dann 2 normale Felder

Es gibt Tabellen,die mehr als ein PK-费尔德哈本;还有z.B.MAID和GMID。
Soweit好的。


ebend nicht;)

Nehmen wir an,aus dieser Tabelle sollen keine Datens?tze physikalisch
gel?scht werden,sondern der L? schstatus durch ein Datenfeld GELOESCHT
angegeben werden。 Hat das Feld den Wert 0,dann ist der Datensatz nicht
gel?scht; ansonsten steht der Zeitpunkt(Tag und Uhrzeit)der L?schung
drin。 Dann funktioniert der PK nicht mehr,denn es k?nnen ja durchaus mehrere
Datens?tze mit gleicher MAID und GMID vorhanden sein。 Aufnehmen von
GELOESCHT in den PK geht theoretisch,ist aber gef?hrlich(da
Flie?kommafeld,und wer wei?schon,ob 0 immer gleich 0 ist ...)。
Es gibt Tabellen, die mehr als ein PK-Feld haben; also z.B.MAID und GMID.
Soweit ok.
ebend nicht ;)
Nehmen wir an, aus dieser Tabelle sollen keine Datens?tze physikalisch
gel?scht werden, sondern der L?schstatus durch ein Datenfeld GELOESCHT
angegeben werden. Hat das Feld den Wert 0, dann ist der Datensatz nicht
gel?scht; ansonsten steht der Zeitpunkt (Tag und Uhrzeit) der L?schung drin. Dann funktioniert der PK nicht mehr, denn es k?nnen ja durchaus mehrere
Datens?tze mit gleicher MAID und GMID vorhanden sein. Aufnehmen von
GELOESCHT in den PK geht theoretisch, ist aber gef?hrlich (da
Flie?kommafeld, und wer wei? schon, ob 0 immer gleich 0 ist...).




0 muss ja nicht Flie?komma sein,sondern kann auch Char oder Smallint sein。


Heiko



0 muss ja nicht Flie?komma sein, sondern kann auch Char oder Smallint sein.

Heiko


你好,
Aufnehmen von GELOESCHT in den PK geht theoretisch,ist
aber gef?hrlich。
und wer wei? schon,ob 0 immer gleich 0 ist ...)。


0 ist in allen mir bekannten Flie?kommaformaten exakt darstellbar,

und damit ist 0 immer gleich 0.还有kannst Du das ruhig mit

in den PK aufnehmen。


Aber ist das trotzdem eindeutig? Wenn Du die Serverzeit einsetzt

und nicht die potentiell abweichende vom Client,dann sollte das

gegeben sein,denn" gleichzeitig" l?schen k?nnen keine zwei

客户。 Bleibt das Problem der begrenzten zeitlichen Aufl?sung

eines Zeitstempels,und ob Du mit dem Risiko leben kannst und

willst,musst Duselbstüberlegen。

Hat jemand eine Idee?
Aufnehmen von GELOESCHT in den PK geht theoretisch, ist
aber gef?hrlich. und wer wei? schon, ob 0 immer gleich 0 ist...).
0 ist in allen mir bekannten Flie?kommaformaten exakt darstellbar,
und damit ist 0 immer gleich 0. Also kannst Du das ruhig mit
in den PK aufnehmen.

Aber ist das trotzdem eindeutig? Wenn Du die Serverzeit einsetzt
und nicht die potentiell abweichende vom Client, dann sollte das
gegeben sein, denn "gleichzeitig" l?schen k?nnen keine zwei
Clients. Bleibt das Problem der begrenzten zeitlichen Aufl?sung
so eines Zeitstempels, und ob Du mit dem Risiko leben kannst und
willst, musst Du selbst überlegen.
Hat jemand eine Idee?




Standardantwort:Gibt es kein Feld im Datenmodell,das

zweifelsfrei als PK dienen kann,dannfügst Du einfach eines

hinzu。发电机dazu,BEFORE INSERT-Trigger drauf und

vergessen。


Ciao,MM

-

Rosenhain 23,53123 Bonn - Fon +49 228 6203366,传真+49 228 624031
www.marian-aldenhoevel.de

"Frühertauschteman Frauen gegen Ziegen,das war is

Handfestes" - D. Nuhr



Standardantwort: Gibt es kein Feld im Datenmodell, das
zweifelsfrei als PK dienen kann, dann fügst Du einfach eines
hinzu. Generator dazu, BEFORE INSERT-Trigger drauf und
vergessen.

Ciao, MM
--
Rosenhain 23, 53123 Bonn - Fon +49 228 6203366, Fax +49 228 624031
www.marian-aldenhoevel.de
"Früher tauschte man Frauen gegen Ziegen, das war was
Handfestes" - D. Nuhr


Marian Aldenhoevel写道:
Marian Aldenhoevel wrote:
Standardantwort:Gibt es kein Feld im Datenmodell,das
zweifelsfrei als PK dienen kann,dannfügstDueinfach eines
hinzu。发电机dazu,BEFORE INSERT-Trigger drauf und
vergessen。
Standardantwort: Gibt es kein Feld im Datenmodell, das
zweifelsfrei als PK dienen kann, dann fügst Du einfach eines
hinzu. Generator dazu, BEFORE INSERT-Trigger drauf und
vergessen.




是沉默的sein sollte,在nahezu allen F?llen zweifeln的男人>
muss ... :)


-

Immo Landwerth - XP专业版SP1 - D5 Pro UP 1 - XanaNews 1.15.7.2



Was immer der Fall sein sollte, da man in nahezu allen F?llen zweifeln
muss... :)

--
Immo Landwerth - XP Pro SP1 - D5 Pro UP 1 - XanaNews 1.15.7.2


这篇关于zusammengesetzter Primary Key mit Deleted-Flag的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆