![]() |
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBExpert Personal
Default Wert bei Datenbankfeld | Datentyp Boolean | Firebird
Moin Moin liebe DPler ;)
------------------------------------------------------------------------------------------------------------------------- Frage: Default Wert bei Datenbankfeld Und zwar gibts bei Database Workbench 3 Lite for Firebird die Möglichkeit einem Feld einen "DEFAULT"-Wert zuzuweisen wenn bei INSERT oder UPDATE der Wert des Feldes nicht übergeben wurde. Mögliche Werte sind ...
Jetzt arbeit ich aber grad mit IBExpert und da gibts einen Punkt DEFAULT SOURCE ... nun meine Frage ob ich die aufgelisteten Werte der DEFAULT SOURCE zuweisen kann oder gibt es eine andere Möglichkeit? ------------------------------------------------------------------------------------------------------------------------- Frage: Datentyp Boolean bei Firebird Ich hab ja in IBExpert die Möglichkeit Checks zu definieren ... da es bei Firebird keinen Boolean Datentyp gibt hab ich die frage, ob es eventuell möglich ist mit einem Check zu überprüfen ob der übergebene Wert 'False' oder 'True' für das angegebene Feld ist ... Das Feld soll dann eben vom Typ 'Varchar(5)' sein ... Nur hab ich keine Ahnung was als Parameter oder P-SQL da einzutragen ist ... sprich ich hab keine Ahnung von der Syntax :P Aber ich schätze mal dass es ein paar leudchen gibt, die vor dem gleichen Problem waren oder einen Ideenanstoss hätten ;) Vielen Dank für eure Posts Euer f4k3 ;) |
Re: Default Wert bei Datenbankfeld | Datentyp Boolean | Fire
Ein Byte oder ein Char sollte reichen
Im ersten Fall wäre default 0 oder ein (je nach dem ob True oder False Standard sein soll) im zweiten 'T' oder 'F' |
Re: Default Wert bei Datenbankfeld | Datentyp Boolean | Fire
Oder man erstellt sich eine Domäne (ob die nun VARCHAR oder SMALLINT ist, muss man selbst entscheiden).
|
Re: Default Wert bei Datenbankfeld | Datentyp Boolean | Fire
Zitat:
Also eigentlich keine Überprüfung welcher Wert übergeben wurde? Ich steh nämlich vor dem Problem ... wenn der Admin der Anwendung die Benutzerrechte festlegt ... gibts ne Reihe von Checkboxen die quasi die Rechte visualisieren. Wenn ich nun ein INSERT oder UPDATE Statement ausführe und als "Wert" im Statement "chbAdmin.Checked" übergebe ... indem steht ja der boolsche Wert "True"/"False" ... und wenn dieser Fall eintritt dass so ein Wert übergeben wird ... dass ich dann quasi auf Seite der Datenbank prüfe welcher Wert übergeben wurde und dann ein Byte 0 oder 1 (bzw. Char 'F' oder 'T') ins Feld eintrage ... Dass wär zumindest für mich programmiertechnisch schön ... ;) weil sonst müsste ich wenn ich das Statement zur Laufzeit einem TZQuery zuweise ... vorher abprüfen ob die 25 Checkboxen .Checked sind und je nachdem dass ins Statement einbauen ... find ich ein wenig fummelig ... |
Re: Default Wert bei Datenbankfeld | Datentyp Boolean | Fire
Zitat:
Du kannst bei den CheckDBBoxen den Wert für wahr oder falsch setzen (.ValueChecked / .ValueUnchecked) |
Re: Default Wert bei Datenbankfeld | Datentyp Boolean | Fire
Ich habe mir für solche Fälle eine eigene Domain erstellt.
SQL-Code:
Die entsprechenden Felder in meiner Tabelle bekommen dann die Domain zugewiesen. So ist dann sichergestellt das nur 0, 1 oder auch ggf. NULL drinsteht.
CREATE DOMAIN DBOOLEAN AS
SMALLINT DEFAULT 0 CHECK (VALUE IN (0,1)); Das mußt Du für Deine Gegebenheiten anpassen. Gruß Hartmuth |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 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 by Thomas Breitkreuz