| FAOsoft | 23.02.2005 - 10:56:02 |
| 1 - Trigger kullanarak Autonic alan oluşturdum afterpost ta transectionu commitretraing ve refresh yapmama rağmen Autoinc olan alanın değeri tabloyu açıp kapayana dek görünmüyor. tek tabloda sorun olmuyor ama master detailde foreign key null hatası alıyorum.
2 - interbasede aynı anda veritabanına hem ib expert hemden delphiden ulaşabiliyorum ama Firebird veritabanına ulaşamıyorum nasıl halledebilirim bunu? Database oluştururken pagesize nedir ne anlama geliyor? | |
| Kuri_YJ | 23.02.2005 - 11:11:21 |
| Selamlar,
1. Sorunuza ilişkin daha taze taze sıcak sıcak konuşulmuş olan bir konu http://www.delphiturkiye.com/forum/viewtopic.php?t=7054 Biraz daha dikkatli olunursa ve arama yapılırsa aradıklarınza ilişkin yanıtların bir çoğunun aslında mevcut olduğunu göreceksiniz. 2. IB Expert kullanmadığım için yorum yok. 3. Soru, Server Diske dosya oluştururken kullanacağı page'lerin size'ı. Bunu default değerinde bırakırsanız sizin açınızdan daha iyi olur. Eğer oluşturacağınız kayıtların (1 recordun boyu) çok uzun ise bu değeri de arttırabilirsiniz. Index pagelerde ve diski kullanırken burada belirtilen size'lara göre hareket edecektir. Performans ayarlamalarında kullanılır ama veri hacminizin çoook büyük olduğu durumlarda bir kısım performans artışı veya azalması getirebilir. Kolay Gelsin | |
| gkimirti | 23.02.2005 - 11:12:47 |
| master-detail yapıda generotoru trigger ile degil de
ibdatasetin generatorfield ozelligi ile artırın burada da onnewrecordu secin | |
| FAOsoft | 23.02.2005 - 11:21:25 |
Sorunuza ilişkin daha taze taze sıcak sıcak konuşulmuş olan bir konu http://www.delphiturkiye.com/forum/viewtopic.php?t=7054
bunu görmüştüm ben bu işi ib/fb ye bırakmak istiyorum ibdatasetin generatorfield ozelligi ile artırın
ib bileşenlerini kıullanmıyorsak nolcak | |
| coderlord | 23.02.2005 - 11:23:48 |
| kuri hocam başıma ilginç birşey geldi. FB'de hazırladığım VT'yapısı bir anda hata vermeye başladı. Unsupported SQL command vs.. Fazla miktarda SP var. Sorun yaratması için bir sebep yoktu. Metadata alayım da yeniden yaratayım tabloyu dedim. Yaratınca aynı problem oluştu.
Pagesize olarak 1024 kullanıyordum. 2048 yapınca hata vermedi. Bu SP'ler yüzünden olabilir mi? Biryerlerde böyle bir limit olduğunu okuduğum ve hata mesajını hatırladığım için PS arttırma yoluna gittim. Böyle birşey ile karşılaştın mı? | |
| FAOsoft | 23.02.2005 - 11:27:20 |
| bana soruyosan hayır acaba trigger bu işi yaparken vt den commt gibi bişimi yapmalıyız | |
| gkimirti | 23.02.2005 - 11:31:34 |
| coderlord bir alan isminde turkce karakter olabilir.
bir kere benim de basıma gelmisti bir tablodaki alan adını degiştirirken yanlıs karakter girdim tabloyu da acamaz oldum sql komutu ile alan adını bir sekilde degistirmistim. | |
| coderlord | 23.02.2005 - 11:36:03 |
| Olabilir bir bakayım. Yanlız Pagesize'ı arttırınca hatanın kaybolması tuhaf. | |
| Kuri_YJ | 23.02.2005 - 11:40:19 |
| Selamlar,
CoderLord : Walla ben de hiç öyle bir şeyle karşılaşmadım. FaoSoft : Eğer IB bileşenlerini kullanmıyorsanız o zaman Generator oluşturan bir SP yapacaksınız ve BeforeInsert'de AutoInc olan alan için bu SP'den Generate edilen ID'yi alıp Master tablonuza manuel siz koyacaksınız. Aynı şekilde Detail table'ınız içinde benzer şeyleri yapmalısınız. Aşağıda benim bu tür işler için yazmış olduğum bir adet SP var. Örnek teşkil etmesi açısından yazdım. Kolay Gelsin SET TERM ^^ ; CREATE PROCEDURE STP_GEN_ID ( VAR_TYPE Integer) returns ( RET_ID Integer) AS /* Procedure: ID'lerin Generate Edildiği Stored Procedure Author : Adnan ÖNCEVARLIK Date : 21.10.2003 Purpose : Table'lar İçin ID'lerin Generate Edildiği Stored Procedure Params ------ VAR_TYPE : Hangi Table İçin ID Üretilecek RET_ID : Oluşturulan ID */ BEGIN IF (VAR_TYPE = 1) THEN /* MOV_COIN_BOX */ RET_ID = GEN_ID(GEN_CBM_ID,1) ; ELSE IF (VAR_TYPE = 2) THEN /* MOV_COLLECTION */ RET_ID = GEN_ID(GEN_COL_ID,1) ; ELSE IF (VAR_TYPE = 3) THEN /* MOV_TRUCK */ RET_ID = GEN_ID(GEN_TRC_ID,1) ; ELSE IF (VAR_TYPE = 4) THEN /* PUB_ANLYZE */ RET_ID = GEN_ID(GEN_ANL_ID,1) ; ELSE IF (VAR_TYPE = 5) THEN /* PUB_CITY */ RET_ID = GEN_ID(GEN_CIT_ID, 1) ; ELSE IF (VAR_TYPE = 6) THEN /* PUB_CONTRACT */ RET_ID = GEN_ID(GEN_CON_ID, 1) ; ELSE IF (VAR_TYPE = 7) THEN /* PUB_FACTORY */ RET_ID = GEN_ID(GEN_FAC_ID, 1) ; ELSE IF (VAR_TYPE = 8) THEN /* PUB_SOURCE */ RET_ID = GEN_ID(GEN_SRC_ID, 1) ; ELSE IF (VAR_TYPE = 9) THEN /* PUB_SUPPLIER */ RET_ID = GEN_ID(GEN_SUP_ID, 1) ; ELSE IF (VAR_TYPE = 10) THEN /* PUB_TYPE */ RET_ID = GEN_ID(GEN_TYP_ID, 1) ; ELSE IF (VAR_TYPE = 11) THEN /* PUB_ZONE */ RET_ID = GEN_ID(GEN_ZON_ID, 1) ; ELSE IF (VAR_TYPE = 99) THEN /* SYS_DEFAULTS */ RET_ID = GEN_ID(GEN_SYS_ID, 1) ; END ^^ SET TERM ; ^^ | |
| oguzozturk74 | 23.02.2005 - 13:02:59 |
| Faosoft :
2 - interbasede aynı anda veritabanına hem ib expert hemden delphiden ulaşabiliyorum ama Firebird veritabanına ulaşamıyorum nasıl halledebilirim bunu? : Eğer VT dosyasının uzantısını gdb olarak değiştiriseniz ulaşabilmeniz lazım. | |