Access 2010 - Gültigkeitsregeln

Dante2000

Commander
Registriert
Apr. 2011
Beiträge
2.551
Liebe CBler,

ich muss im Rahmen meiner Ausbildung zum Fachinformatiker (Systemintegration) im Bereich Anwendungssysteme eine Datenbank erstellen. Ich habe jedoch Probleme bei der Benutzung von Access 2010.

Es geht um Folgendes:

Ich habe eine Kundentabelle in der Entwurfsansicht geöffnet, mit den drei Feldnamen "Kundennummer", "Kundenname" und KundenVorname".

Diese drei haben folgende Werte:

Kundennummer = AutoWert, Primärschlüssel
Kundenname = Text
KundenVorname = Text

Ich habe nun folgende Aufgabenstellung bei der Erstellung meiner Datenbank:

Im Feld "Kundenname" soll eine Zeichenlänge von mind. 2 und maximal 40 Zeichen haben. Im gültigen Werterbereich dürfen nur [a..z, A..Z] eingetragen werden.

Die maximale Zeichenlänge kann man bekanntlich Problemlos in der Feldgröße eingeben. Nun habe ich jedoch Probleme bei er Einstellung für mind. 2 Zeichen. Ich habe in der Gültigkeitsregel bisher folgendes eingegeben:

Gültigkeitsregel : >2

Wenn ich nun in die Datenblattansicht wechsel und im Feld "Kundenname" einem Namen eingebe, kommt die Fehlermeldung: Fehler 'Fehler beim Auswerten der CHECK-Beschränkung . ' in der Gültigkeitsregel.
Wenn ich jedoch zwei Zahlen eingebe, erscheint keine Fehlermeldung.

Nun meine Frage: Wie kann ich die Eingabe von Zahlen vermeiden und die Eingabe von Buchstaben mit der mind. Größe umsetzen?

Leider habe ich dazu keine Unterlagen und die meisten Einträge im Internet befassen sich direkt mit dem Felddatentyp "Zahl" oder anderen Datentypen.

Danke für eure Hilfe.
 
Gültigkeitsregel wäre dann:
Code:
Länge([Test])>2 Und Nicht Wie "*[!((a-z) or (A-Z))]*"

Edit: nebenbei wäre diese Seite vllt noch interessant: allenbrowne.com/ValidationRule.html
 
Zuletzt bearbeitet:
Vielen Dank für die Hilfe! Dein Tipp/deine Lösung hat mich erheblich weitergebracht. Nun habe ich nur noch ein Problem: Ich muss die Indexnummer auf 1000 setzen. Diese soll dann von 1000 bis 9999 gehen.
 
Das musst du über eine SQL-Abfrage machen, ohne Tricks ist das nicht möglich:
Code:
CREATE TABLE Tabellenname
(
ID AUTOINCREMENT(1000,1)
)
Anschließend kannst du die Tabelle ganz normal bearbeiten.
 
Hallo,

danke für die obige Anleitung. Leider bekomme ich es nicht hin:

Ich habe folgendes in der Abfrage zu stehen:

SELECT T_Kunden.[KNr]
FROM T_Kunden;

Wo kommt dort deine Abfrage hinen? Wenn ich sie darunter kopiere, kommt die Meldung, das ich nach dem Ende der SQL-Anweisung etwas zu stehen habe. Muss dafür denn eine neue Tabelle, über diese Abfrage, erstellt werden?
 
Die Abfrage die ich dir gepostet habe muss natürlich als eigene Abfrage ausgeführt werden, diese hat nichts mit den Abfragen der Daten zu tun die du dann im Betrieb machen willst.
Meine Abfrage erstellt lediglich eine NEUE Tabelle welche eine Spalte vom Typ Autoincrement beinhaltet der bereits bei 1000 startet.

D.h. du musst deine vorhandene Tabelle löschen, meine Abfrage ausführen (natürlich den Tabellennamen ergänzen) und kannst anschließend diese neu erstellte Tabelle normal bearbeiten/ändern und die Spalten einfügen die du benötigst.
 
Zurück
Oben