![]() |
Datenbank: Firebird • Version: 2.1.2.18118-0 • Zugriff über: InterBase
Datenbank Primary Key
Hey ;)
Ich beschäftige mich zur Zeit mit Datenbanken und habe hier auch einiges über Primary Key und doppelten Einträgen gelesen, jedoch bleibt jetzt noch eine Frage offen: In wie fern ist der Primary Key gut um Duplikate auszuschließen: (FELD1 soll keine Duplikate enthalten) Ich lege den PK auf das Feld1. Jetzt füge ich den Wert "TEST" hinzu. Danach füge ich den Wert "test" hinzu. Beide Werte wurden erfolgreich hinzugefügt. Nur wenn ich erneut versuche "TEST" oder "test" hinzuzufügen dann bekomme ich eine Fehlermeldung auf Grund des Duplikats. Wie kann ich das ganze Case Insensitive gestalten ? Ich möchte das mein DBMS keinen Unterschied zwischen Groß- und Kleinschreibung macht.
Code:
bYe :)
CREATE TABLE MYTABLE(FELD1 varchar(30) PRIMARY KEY, FELD2 varchar(30));
|
AW: Datenbank Primary Key
|
AW: Datenbank Primary Key
Das Thema habe ich bereits gelesen und nein, ehrlich gesagt finde ich da keine Lösung für mich.
|
AW: Datenbank Primary Key
![]() |
AW: Datenbank Primary Key
Das hört sich irgendwie nach "Workaround" an und du selber sagst ja das es ab FB 2.1 nicht mehr notwendig ist... Also will ich nicht zu Anfang schon tricksen ;)
Ich könnte auch einfach meine Einträge auf ein Niveau bringen bevor ich sie hinzufüge aber das wäre auch nur ein Workaround .. bYe :) |
AW: Datenbank Primary Key
Nunja, andererseits nehme ich persönlich lieber einen zuverlässig funktionierenden Workaround, als tagelang nach einer "sauberen" Lösung zu suchen. Außerdem würde ich persönlich kein VarChar-Feld als PK definieren (obwohl das natürlich nicht verboten oder verwerflich ist), sondern immer ein künstliches Feld, das per Generator-/Trigger-Paar automatisch befüllt wird. Aber das ist sicher Ansichtssache.
|
AW: Datenbank Primary Key
Hmm naja also ich möchte in diesem Feld keine Duplicates also hab ich das als PK definiert.
Kann man einem Feld nicht eine Case Eigenschaft verpassen ? |
AW: Datenbank Primary Key
Vielleicht hilft Dir
![]() |
AW: Datenbank Primary Key
Hm ich dachte der Expression Index spielt nur bei einer Abfrage eine Rolle ? Ich frage ja nicht ab ob Duplicates vorhanden sind, das macht das DBMS von selber. ..Oder hab ich das falsch verstanden ?
|
AW: Datenbank Primary Key
Hi!
Du kannst auch Duplikate verhindern, ohne dass es sich bei diesem Feld um den PK handelt. Das Zauberwort ist UNIQUE. Vor allem kannst du auch mehrere UNIQUE-Felder haben, aber nur einen PK. Aber auch UNIQUE ist von Haus aus case-sensitive. Grüße, Frederic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz