Çok Yakında Yeni Bir Arayüzle karşınızdayız! http://yeni.delphican.com/

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Firebird index sorunu
#1
Merhaba

Firebird 2.5 veri tabanında index tanımlayarak mükerrer kayıt kontrolü yaptırmak istiyorum. Fakat Ğ.İ.Ö.Ş.Ü.Ç harflerinde büyük ve küçük farklılıkla yazıldığında index alanı kaydı yokmuş gibi kabul edip kayıt işlemini gerçekleştiriyor örnek (ÇAY kaydı varken çay yazında bu kaydı kabul ediyor. Wın1254 ve TURKISH_CHARSET olarak tanımlı database firebird kısmında. Bu kontrolü data kısmında nasıl çözebilirim eğer database kısmında çözümü yoksa bunu delphi tarafında nasıl çözebilirim. Şunu da belirtmek istiyorum ki data ya büyük harfe çevirerek kayıt yaptırmak istemiyorum. Eğer data da ÇAY olarak kayıt varsa çay olarak giriş yapılmaya çalıştığımda uyarı vermesini istiyorum. Mysql ve mssql de bu sorun yok sorunsuz çalışıyor fakat benim firebird tarafında bunu çözmem gerekiyor. Konu hakkında yardımlarınız için şimdiden teşekkür ederim.
Cevapla
#2
(06-03-2017, Saat: 22:30)quake16 Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba

Firebird 2.5 veri tabanında index tanımlayarak mükerrer kayıt kontrolü yaptırmak istiyorum. Fakat Ğ.İ.Ö.Ş.Ü.Ç harflerinde büyük ve küçük farklılıkla yazıldığında index alanı kaydı yokmuş gibi kabul edip kayıt işlemini gerçekleştiriyor örnek (ÇAY kaydı varken çay yazında bu kaydı kabul ediyor. Wın1254 ve TURKISH_CHARSET olarak tanımlı database firebird kısmında. Bu kontrolü data kısmında nasıl çözebilirim eğer database kısmında çözümü yoksa bunu delphi tarafında nasıl çözebilirim. Şunu da belirtmek istiyorum ki data ya büyük harfe çevirerek kayıt yaptırmak istemiyorum. Eğer data da ÇAY olarak kayıt varsa çay olarak giriş yapılmaya çalıştığımda uyarı vermesini istiyorum. Mysql ve mssql de bu sorun yok sorunsuz çalışıyor fakat benim firebird tarafında bunu çözmem gerekiyor. Konu hakkında yardımlarınız için şimdiden teşekkür ederim.


create unique index adi_unq_idx on ogrenci computed by (lower(ogrenci_adi));


Örnek ogrenci tablosunda ogrenci_adi alani tanımlanmıştır.
ALİ
ali
izin vermez
--
ÇAY
çay
çAy
izin vermez.

“Do. Or do not. There is no try.”
Cevapla
#3
Quake16, Mesajı yanlış yere açmışsın. Firebird bölümünde açman daha doğru olurdu. Index olarak @masteryoda'nın dediği şekilde de yapabilirsin, kendin kod tarafında kayıt yapmadan önce de kontrol edebilirsin. İşi veritabanına bırakırsan kayıt sırasında programın kontrolü dışında hata mesajları çıkabilir, try-catch kullanman gerekebilir.
Ben kod tarafında kendi kontrollerini kendinin yapmanı tavsiye ederim. Artılarını ve eksilerini ancak sen kendin deneyerek çözebilirsin diye düşünüyorum.

E.O.F.  (End Of Fun )
Rolleyes
Cevapla
#4
Merhaba

Yardımlarınız için teşekkür ederim data kısmında olan problemimi verdiğiniz kodla çözülmüş oldu.
Cevapla
#5
(07-03-2017, Saat: 17:33)quake16 Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba

Yardımlarınız için teşekkür ederim data kısmında olan problemimi verdiğiniz kodla çözülmüş oldu.

client tarafında da aynı kontrolü yapmanız daha iyi olacaktır sonuçta aynı kayıt varsa daha anlamlı bir mesajla kullanıcıya bildirim verebilirsiniz.

localete ile veya ayrı bir query ile aynı kayıt varmı diye kontrol edeblirsiniz
sql ile kontrol için index ile aynı mantıkta buraya bakabilirsiniz Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

“Do. Or do not. There is no try.”
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  FIREBIRD facebook GROUP daveti softdestek 8 404 17-10-2019, Saat: 10:43
Son Yorum: boreas
  Firebird Trigger'a parametre gönderme esistem 3 833 15-10-2019, Saat: 22:17
Son Yorum: Aktolgali
  Firebird ile aynı server içindeki iki ayrı database deki tablolar arasında select serkansirin001@gmail.com 6 427 03-09-2019, Saat: 01:05
Son Yorum: mcuyan
  Visual Studio Code kullanıcıları için Firebird Eklentisi rmzgenius 2 428 31-05-2019, Saat: 10:32
Son Yorum: edo
  Firebird Database Oluşturma SercanTEK 6 847 30-05-2019, Saat: 09:18
Son Yorum: rmzgenius



Konuyu Okuyanlar: 1 Ziyaretçi