sybase hakkında

Sybase veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

sybase hakkında

Mesaj gönderen dr_ebuzer » 02 Ara 2005 09:07

selam arkadaşlar fahrettin kardeşimizin seminerlerini izledim bu konuda gerçekten kendim için çok faydalı buldum ancak sybase veritabanını yeni tanıyan birisi olarak mantığınıda çok iyi buldum yalnız delphiturkiye forumunda hemen hemen bu konu hakkında yazılan bütün yazılara baktım genelde cevap kısmında seminerlere atıf yapılıyor seminerler çok güzel hazırlanmış kabul ediyoruz ama benim gibi sybase ile yeni tanışan arkadaşlar için sıfırdan anlaşılacak şekilde izah edilirse sanırım yerinde olur internetten sybase'nin 9 sürümünü indirdim seminerlerde yapılan şeyleri sırasıyla yapıp uygulamaya çalışıyorum ancak bazı meseleler kafama takıldı mesela seminerde şöyle bir tablo oluşturulmuş
gelen_fatura_urun

1-gelen_fatura_no number notnull
2-urun_no number notnull
3-adet number notnull
4-bırım_fıyat:dmn_tutar notnull {problemim burada--dmn tutar dediğiniz nedir sybase central programıyla table oluştururken bu dmn tutar kısmını nereye yazacağız burayı bir türlü seminerde anlayamadım lütfen bunun cevabı ve birde sybase konusunda sıfırdan başlayarak güzel örnekler verilirse kendi adıma çok faydalanırız

Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1526
Kayıt: 11 Tem 2003 03:55
Konum: İstanbul
İletişim:

Mesaj gönderen lazio » 02 Ara 2005 09:45

Sysbase Central ile kendinize göre tipler oluşturabiliyorsunuz mesela
DMN_STRING VARCHAR(255)
DMN_MIKTAR NUMERIC(10,2)
DMN_FUYAT NUMERIC(15,2)
gibi..
Domain leri Database altındaki Domains klasöründen yada
create domain DMN_XXX varchar (10); gibi InteractiveSQL aracı ile oluşturabilirsiniz..

Kullanımı ise, Tablo oluştururken DataType olarak daha önceden hazırladığınız Domainleri seçiyorsunuz..
Resim

..::|YeşilMavi|::..

Kullanıcı avatarı
metemete
Üye
Mesajlar: 422
Kayıt: 21 Mar 2004 12:30
Konum: samsun
İletişim:

Mesaj gönderen metemete » 02 Ara 2005 11:24

central programında sql kodları yazman için bir secenek var
tam hatırlamıyorum ama sql edit..... diye bir secenek
oradan sql kodları yazarakta table ve bircok işlem yapabilirsin
daha sonra sol tarafta oluşturduklarını görevilirsin.

istediğiniz bilgiler için burası yararlı olur;
http://www.delphiturkiye.com/index.php?page=trigger.htm

dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

sybase hakkında

Mesaj gönderen dr_ebuzer » 07 Ara 2005 08:42

selam arkadaşlar biraz geciktim ama metemete nin verdiği linki
inceledim gerçekten çok güzel hazırlamışlar ellerine sağlık
oturdum tek tek uygulamaya başladım ve sonunda bitirdim biliyormusunuz bir veritabanı ancak bu kadar güzel olabilir ve sağlam olabilir heşey çok güzel çalıştı yalnız bu konuda forumda arattım yüzlerce başlık çıkmasına rağmen bu seminer ve bir kaç makale dışında konuyu etraflıca anlamamızı sağlayacak şeyler yok mesala dün bu linkteki örneği uygularken uygulama çalıştı ancak benim orda anlamadığım şeyler var
mesela bir tanesi <<exceptions>> burda ne işe yarıyor burda ne tanıtıyoruz mantığı nedir
ikincisi <<domain>>bunla ilgilide fazla bir bilgim yok gerçi yukarda arkadaşımız biraz açıkladı ama örnekler olursa daha iyi olur
bu konuları konuşursak inşşallah iyi olur
not programı tamamen ibexpert ile denedim mükemmel bir program
------------------------------------------------------------------------------------
ilim müminin yitiğidir nerde bulursa orda alır h.ş

Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 09:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin » 08 Ara 2005 11:54

konuyu başından sonun kadar etraflıca anlatmak hem çok zahmetli hem de cidd izaman isteyen bir konu olduğu için bu şekilde onlarca anlatım olması çok zor en azindan tek bir elden çıkması çok zor....
Bu nedenle de bu konuda forumda bir makale var ki sizin incelediginiz link zaten... Ve de bunun dışında da seminerlerde bu makelenin pratik uygulanmasi ve uygulama anında biraz daha meselenin açılıp genişletilmesi söz konusu....
Konu ile ilgili bunlardan başka meseleyi komple toparlayan makaleler belki yine çıkar ama bir tanesi bile yeter diye düşünüyorum. En azından gerekli başlangıcı yapmak için daha sonraki takılmalarınızda zaten forumda sorulmuş sorulardan birine takılacaksınız ya da yeni bir problemse de foruma sorunca muhtemelen cevap alacaksınız...
Yani bence tuttuğunuz yol doğru ve en zor olan seminer ve makaleleri sabırla inceleyip oradaki çalışmayı başarıp anlama aşamasını geçerek bir temel atmışsınız....

Kolay gelsin....
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)

dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

sybase hakkında

Mesaj gönderen dr_ebuzer » 09 Ara 2005 09:08

fahrettin bey herşeyden önce yazdığım soruna hemen cevap verdiğiniz için
teşekkür ederim dikkat ediyorum sybase konusunda genelde sizin verdiğiniz bilgiler bizim için temel referanslar niteliğinde seminerleri ve makalenizi okuyan her kişi hemen hemen bir alt yapı kazanmış olacaktır
ancak takdir edersinizki forumdaki arkadaşlardan hemen hemen geneli
bu konu hakkında sizi referans olarak gösteriyorlar yani söyleyeceğim şuki senin bizimle daha çok işin var seminer 8 de örnek verdiğiniz program yapısını makalede tam olarak almamışsınız yani cari hesapla ilgili olan bölüm makalede yok aslında bu bölümüde oraya eklerseniz stok cari entegre mantığının alt yapısını anlayacağımızı umarım bu iyiliği yaparsanız gerçekten bu forumda büyük bir eksikliği tamamlayacağı kanaatindeyim şimdiden teşekkürler

birde şu konu hakkında :EXCEPTION ERWIN_CHILD_INSERT_RESTRICT
nedir bu nerede tanımlanır neden ihtiyaç duyulur bu konuyuda açıklarsanız sevinirim

-------------------------------------------------------------------------------------
ilim bir nokta idi onu cahiller çoğaltı

Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1955
Kayıt: 02 Eyl 2003 03:44
Konum: İstanbul

Mesaj gönderen gkimirti » 09 Ara 2005 09:26

exceptionlar önceden tanımlı hata stringleridir,
yani siz bir exception tanımlayıp (firebird icin)
exception ex_deger_cok_yuksek;
seklinde bir kod parcacıgını procedure yada trigger icinde kullanabilirsiniz.
exception olusunca islem tamamen iptal edilir.
mesela mutlaka bir deger girilmesi gereken yerde triggera

Kod: Tümünü seç

if (alan1 is null)
  exception ex_deger_lazim;
ÜŞENME,ERTELEME,VAZGEÇME
Oğlum Yusuf'un yeni oyunu :mrgreen: Google Play üzerinde
Linear Minimalist Puzzle ve Smash Drift
👉 https://goo.gl/8S31tD 👈
👉 http://bit.ly/2OJos6P 👈

Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 09:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin » 09 Ara 2005 12:46

Exception konusunu sagolsun Gokmen arkadasimiz izah etmis zaten... Oradaki ornekte trigger kodlarini Erwin hazirladigi icin oyle bir standardi var. Hata mesajlari icin onceden exception lar olusturup uygun durumda uygun hata mesaji icin ilgili exception cagirilmakta...

Makale onceden hazirlanmisti... Semineri sonradan hazirlayip verirken meseleye cari olaylarini da katmistik... Aslinda temel mantik ayni oldugu icin makaleyi inceleyerek bile cari hesap mantigi cozulebilir. Seminerde de sozlu olarak anlatmistik dediginiz gibi....

Makaleyi bu anlamda genisletmek tabi ki mumkun... Fakat ne zaman yapabilirim konusunda mevcut yogunlugumdan dolayı soz veremem ama insallah fırsatını bulduğum bir zamanda genişletmeye çalışayım....

Kolay gelsin....
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)

dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

SYBASE HAKKINDA

Mesaj gönderen dr_ebuzer » 09 Ara 2005 02:14

gkimirti arkadaşımın verdiği örnekten bu olayı anladım ve uyguladım kendi
dilimizde hata mesajları verebiliyoruz teşşekkürler

fahrettin arkadaşım senin dediğinide inşaalah uygulayıp cari hesap tarafınıda başarmaya çalışacağım yalnız takıldığım yerlerde lülfen yardımlarınızı esirgemeyin



------------------------------------
kendi nefsi için istediğini kardeşi içinde istemeyen bizden değildir (hadis)

Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 09:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin » 09 Ara 2005 03:05

Meselenin sybase ile dogrudan bir ilişkisi yok. Genel bir veritabanı problemi olacağı için herkesin az çok ilgi ve bilgi alanı giriyor.... Ayrica mesele sybase e ozel bile olsa bu konu da benim tekelimde degil zaten... Bakmayin sybase in en çok reklamını ben yapıyorum ama başka kullananlar da var ;) Çok şükür oldukça geniş bir forumumuz var. Dolayısıyla takıldığınız yerlerde elbette içimizden biri bilgisi ve zamanıyla orantılı olarak yardım edecektir.

Kolay gelsin...
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)

dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

SYBASE HAKKINDA

Mesaj gönderen dr_ebuzer » 10 Ara 2005 03:33

arkadaşlar seminer ve fahrettin beyin makalesine bakarak hem stok hemde müşteri hesaplarını güzel bir şekilde tamamladım yani sorunsuz bir şekilde çalışıyor şimdi geldik olayın bundan sonrasına

delphi programında bir form oluşturdum üzerine 5 adet dbgrid attım
bunları herbirini bir tabloya bağladım birinde kayıt girdiğimde diğerinin anında değişmesi için ne yapmam gerekiyor forumda epey arama yaptım ibdataset ,IBTransaction, vs.. bu konularla ilgili epey yazı olmasına rağmen genelde bir çözüme ulaşmada problemler var şunu sırası ile tarif edebilecek arkadaşlar varsa lüfen bilgilerini bizden esirgemesinler

ayrıca fahrettin beye bu makalesinden dolayı bir daha teşekkür ederim
çünkü sybase'yi tanımadan önce delphide stok takip programı üzerine uğraşıyordum o kadar karışık kod yazmam gerekiyorduki nerdeyse kafayı yiyecektim

Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4480
Kayıt: 10 Haz 2003 12:48
Konum: İstanbul

Mesaj gönderen rsimsek » 10 Ara 2005 08:48

Arama için anahtar kelimeler post_event veya eventname :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!

Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1526
Kayıt: 11 Tem 2003 03:55
Konum: İstanbul
İletişim:

Mesaj gönderen lazio » 10 Ara 2005 09:49

DBGrid leri bağladığınız table ların yada ibdataset lerin after post olayında ilgili transaction ı commit ettiniz mi?
Resim

..::|YeşilMavi|::..

Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 09:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin » 11 Ara 2005 01:11

Eğer Sybase kullandiysaniz degisikliklerden bir event ile haberdar olmaniz zor. En azindan standart componentler ile... Cunku tablolardaki degisiklikler tamamen veritabanı tarafinda oldugu icin ancak ilgili tablolar refresh edilirse veriler guncellenebilir...
Bu tur durumlar icin ben soyle yapiyorum... Mesela bir stok giriş veya çıkışı işlemi varsa bu veritabanı tarafinda hangi tabloyu etkiliyor? Mesela URUN_STOK tablosunu o zaman islem yaptigim tablonun After post ve after delete eventlerinde URUN_STOK tablosuna ait eger Table bileseni var ve de acik ise onu Refresh ediyorum... Yok eger Query componenti var ise ve de aciksa da onu kapatip aciyorum... Boylece ekranda aninda degisikliklerin ilgili gridde degistigini gorebiliyorum....

Yok eger Firebird kullandiysaniz bu islemler icin eventler kullanılabilir...
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)

dr_ebuzer
Üye
Mesajlar: 30
Kayıt: 29 Eki 2005 07:26

SYBASE HAKKINDA

Mesaj gönderen dr_ebuzer » 12 Ara 2005 11:55

fahrettin beyin dediği gibi yaptım herhangi bir problem yok hangi table etkileniyorsa onu after posta refresh ediyorum aynı anda değiştirmeleri yapıyor şimdi sırayla devam ediyoruz
tableleri oluşturdum
sp'leri yazdım
triggerleri yazdım
ve delphide bunun arayüzünü oluşturdum şimdi sıra delphide çıkan sorunlarda
1-sorun
bir tane ibdatabase oluşturdum bir tanede IBTransaction oluşturdum
diğer tablolarıda bunlara bağladım IBTransaction'nin default actionunu
TAcommitretaining olarak ayarladım birinci problem stok tablosuna kayıt yapıyorum programı açıp kapdığım zaman kayıtlarım tekra silinmiş oluyor

delhidede aynı problem vardı hatırlarsanız şöyle bir kodla bunu halldediyorduk<< DBIsavechanges((dataset as TBDEdataset).handle);>>
bunu ıbtablede nasıl yapacağız diğer soruları sırasıyla inşşallah soracağım istiyorumki bu başlığı okuyanlar benim gibi sıfırdan başlayarak tek tek çözümleri görüp anlasınlar
-----------------------------------------------------------------------------
kişi allahın yanındaki değerini öğrenmek istiyorsa allahın kendisi yanındaki değerine baksın (hadis.şerif)

Cevapla