firebird 1.5 'ta boolean veritipi

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
murat2608
Üye
Mesajlar: 19
Kayıt: 29 Haz 2004 01:15
Konum: Bursa

firebird 1.5 'ta boolean veritipi

Mesaj gönderen murat2608 »

S.A.

Öncelikle kurban bayramınız mübarek olsun.

Delphi seminerlerinde firebird veritabanı anlatılmıştı. firebird 1.5 için boolean veritipinin eklendiğini duyduk. IBExpert programı firebird 1.5'u destekliyor. Bu program yardımı ile fdb uzantılı bir veritabanı oluşturduk ve işlem yaptık ama boolean tipinde bir veritipi göremedik.

yardım edebilirseniz sevinirim. Taşekkürler. İyi bayramlar.
Sesini değil,
Sözünü yükselt !
Yağmurlardır zambakları büyüten
Gökgürültüleri değil ...
Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege »

Lütfen başta bu makaleyi bi inceleyelim :)

FireBird/Interbase hakkında Sık Sorulan Sorular (16.12.2004)

burada tüm başlangıç sorularınıza ait cevapları bulacaksınız.
Boolean tipi yok, nasıl olacak?
Evet ama bir domain tanımlayarak Boolean tipini kolayca oluşturabilirsiniz. True ve False için 1 ve 0 değerlerini saklayacağız :

Kod: Tümünü seç

create domain DMN_BOOLEAN as SMALLINT default 0 not null
      check ( value in (0,1));
.-.-.-.-.-.-.-. ^_^
murat2608
Üye
Mesajlar: 19
Kayıt: 29 Haz 2004 01:15
Konum: Bursa

Mesaj gönderen murat2608 »

Teşekkür ederim.
Sesini değil,
Sözünü yükselt !
Yağmurlardır zambakları büyüten
Gökgürültüleri değil ...
Kullanıcı avatarı
spoke25
Üye
Mesajlar: 434
Kayıt: 16 May 2005 04:06
Konum: Bolu

Mesaj gönderen spoke25 »

Boolena alanlara delphiden default verii gondermeden benn yapamıyorum sureklii olarakk lan bos hatasıı alıyorum.. sebebii ne olabilir..?
Başlayan Herşey Birgün Bitmek Zorundadır.
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

merhabalar

default 0 not null kodu alanın default 0 değeri alıp, boş olamayacağını belirtir. 0 değeri ise false değeridir. true için 1 yapman gerekir. + ilgili TDBCheckbox bileşeninin valuechecked ve valueuncheck değerlerini ayarlaman lazım.
sen seçili için 1 olmayan için 0 kullan demelsin....

Kod: Tümünü seç

valuechecked := '1';
valueuncheck := '0';
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
spoke25
Üye
Mesajlar: 434
Kayıt: 16 May 2005 04:06
Konum: Bolu

Mesaj gönderen spoke25 »

Onuu billiyorumm Hocamm fakatt Ben defaultt değer dendiğindee şunuu anlıyorumm yanii verii girmediğimdee onuu false olarakk algılayacakk annlıyorum.. dediğimm gibidee yapıyorr ancann ibexpertenn verii girildiğinde yapıyor.. Delphii tarafındann onnewrecord dann birr değerr gondermenizz gerekiyor.. soylemekk istediğimm bu..
Başlayan Herşey Birgün Bitmek Zorundadır.
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

tekrar merhaba,
aynı yapıyı bende kullanıyorum. olayın IBExpert veya Delphi tarafı diye bir tarafı yoktur. IBExpert te okus pokusçu değil, marifet FB de. herhangi bir değer göndermene gerek yok. FB senin için bu değeri default 0 gönderir...
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7602
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Eğer IBX kullanıyorsanız default değerleri atamıyordu sanıyorum. IBX'in bir bugı bu.

OnNewRecord olayında :

Dataset.FieldByName('ALAN_ADI').AsInteger := 0;

gibi bir atama yaparsanız sorun kalmaz.

Kolay gelsin.
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

Default değerleri maalesef bildiğim hiçbir component (BDE, dbExpress vs.) hiçbir VT'den döndüremiyor. AfterPost'tan sonra habire Refresh etmek gerekiyor. Bir de alan Required tanımlı ise işiniz iyice karışıyor ki default tanımlamalarda NOT NULL tanımlamamak zaten pek de mantıklı değil.

Sonuç olarak ben VT'de default tanımlaması yapmamayı tercih ediyorum. Eğer yapacaksanız OnNewRecord'da veya BeforePost'ta o default değeri atamalısınız. İyi de ben atayacaksam VT ne iş yapacak diyorsanız, tabiki haklısınız.

Ben MS-SQL Server için dbExpress'in buglarından dolayı üçüncü parti bileşen CoreLab'ın dbExpress componentlerini kullanmaya başlamıştım. Bir de baktım ki tabloyu açtığımda bütün alanlar NOT REQUIRED karşıma çıkıyor. Neyse e-mail yazdık, araştırdık. Adamlar: "Maalesef öyle çünkü VT'de Default tanımlı alanlar REQUIRED olduğunda kayıtlarda sorun oluyordu biz de sorunu bu şekilde kökünden hallettik." deyip işin içinden çıkıverdiler.

Sonuçta bu Default olayı Delphi için ciddi bir problem. Kesin çözüm ise bence hiç kullanmamak.

İyi çalışmalar.
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

ben FIBPlus kullanıyorum gayet güzel no problem. dediğiniz buglar yok. ben ta en başından beri IBX in artık InterBase için olduğu kanaatini taşıyanlardanım. FB her geçen gün yenileniyor, FIBPlus FB versionlarını takip ediyor ve sürekli destek veriyor. parası diyorlar. şu an için lisanslamadım. ama projemde kullanıyorum bittiğinde almayı düşünüyorum.
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
spoke25
Üye
Mesajlar: 434
Kayıt: 16 May 2005 04:06
Konum: Bolu

Mesaj gönderen spoke25 »

Evet IBX kullnıyorum.. Buraya bunu yazdım çünki bunu çok soruyorlar..

Vardığımız Sonuç D7 Standart İbX Kullnan arkadaşlarr Boolean verii tipii tanımı yaparken default değeri OnNewrecord Olayından kendiniz Göndermek zorundasınız.. Saygılarımla Kolay gelsin.. Sadec Boolean değil tum defaultlar için bu olay geçerlii..

Sorunun Sebebii İBx Firebird Değil.. Eğer Oyle olsa İbexpertede yapmaz.
Başlayan Herşey Birgün Bitmek Zorundadır.
Cevapla