Firebird boolean type
#1
السلام عليكم

الجميع يعلم بان قواعد بيانات FireBird لا توفر النمط Boolean على الاقل ليس قبل الاصدار الثالث

لكن يمكنك ان تقوم بذلك بكل سهولة و يسر باستخدام domain
PHP كود :
CREATE DOMAIN D_BOOLEAN AS Char
  CHECK 
(VALUE IN ('T', 'F')); 

لكن ليس من المعقول استخدام حرف T او F للدلالة على True او False

لعرض القيم عرض ما نريد يمكن اتسخدام الحدث OnGetText للـ Field سيتم عرض Oui بدل T في مكون DBComboBox مثلا
PHP كود :
procedure TDM.cds_TestGetText(Sender: TField;
  var 
Text: string; DisplayText: Boolean);
begin
  
if Sender.AsString[1] = 'T' then Text := 'Oui';
  if 
Sender.AsString[1] = 'F' then Text := 'Non';
end; 

لحفظ البيانات نسستخدم OnSetText
PHP كود :
procedure TDM.cds_TestSetText(Sender: TField;
  const 
Text: string);
begin
  
if Text = 'Non' then Sender.AsString := 'F';
  if 
Text = 'Oui' then Sender.AsString := 'T';
end; 

دريس لتكسير الملل اليومي Big Grin
و السلام عليكم و رحمة الله
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
الرد


الردود في هذا الموضوع
Firebird boolean type - بواسطة S.FATEH - 26-08-2013, 05:40 PM
Firebird boolean type - بواسطة SMP3 - 26-08-2013, 09:22 PM
Firebird boolean type - بواسطة mobile - 26-08-2013, 10:40 PM
Firebird boolean type - بواسطة S.FATEH - 26-08-2013, 11:18 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم