4096 kayıttan fazla yazmıyor

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

4096 kayıttan fazla yazmıyor

Mesaj gönderen ALUCARD »

arkadaşlar merhaba
bir veritabanından başka bir veritabanına veri aktariyorum
delphi ile yapıyorum
bu sırada d7 ve firebird 2.0 kullanıyorum

ama 4096 kayıttan fazla yazmıyor
hata yazdı:sql error=-503

bir turlu sorunu çözemedim

10000 kayıtlı bir tabloyu 3 seferde aktarabildim
bir yardım ederseniz sevinirim.
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

nasıl yaptığını tam anlayamadım ama 500 veya 1000 in katlarında commit edersen sorun kalmaz sanırım :?: tek bir transectionda atayamıyor olabilir :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

bit yerde yanlış yapıyorum
bu iş firebird 2.0 kurduktan sonra oldu
yoksa firebird 1.5 te 15000 kayıt atmıştım ben bu kodla
bir yerlerde biayarı olması diye düşünüyorum
:) :)

nasıl yaptığını tam anlayamadım ama 500 veya 1000 in katlarında commit edersen sorun kalmaz sanırım tek bir transectionda atayamıyor olabilir
ben her keyıttan sonra commitreatining yapıyorum işlem bittikten sonrada commit ediyorum
hem diyelim 1000 de commit etttik vt kapandı tekrar açmam gerekmeyecek mi bunu for dongusunun içinde nasıl kontrol edicem
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Meraktan soruyorum... Ben de yeni öğreniyorum da yeri geldi... :lol:

Kod: Tümünü seç

  CREATE DATABASE veritabani.fbd
  PAGE_SIZE 4096
- dediğimiz Page Size bu rakamla eşleşiyor da, 1 transactionda kaydedilecek maksimum kayıt sayısını temsil ediyor olabilir mi :?:
Resim
Resim ....Resim
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

ben zannetmiyorum ordaki 4096 ile bunu aynı olabileceğini

bu forumda sedece ben değilimdir herhalşde 4096 dan fazla kaydı akrtaran: :(
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Interbase Developer Guide PDF dosyası varsa bir inceler misin (Sayfa:32,33) ? yanlış anlamadıysam aradığımız nokta Soft Commit

Optimizing the InterBase SQL Links driver başlığında şunlar geçiyor...
Use the BDE Administrator to configure the InterBase SQL Links driver. To start the BDE
Administrator, select it from the Borland Delphi or C++ in the Programs menu. To view
the InterBase driver definition, click on the Configuration tab, and then expand Drivers
and Native from the Configuration tree. Click on INTRBASE to display the InterBase
driver settings.
There are three options you can change to optimize the InterBase driver:
DRIVER FLAGS
SQLPASSTHRU MODE
SQLQUERY MODE
These are discussed in the following sections.
Setting the driver flags
Depending on your database needs, you should set the DRIVER FLAGS option to either
512 or 4608 to optimize InterBase. The recommended value for DRIVER FLAGS is 4608.
If you set DRIVER FLAGS to 512, you specify that the default transaction mode should be
repeatable read transactions using hard commits. This reduces the overhead that
automatic transaction control incurs.
If you set DRIVER FLAGS to 4608, you specify that the default transaction mode should
be repeatable read transactions using soft commits. Soft commits are an InterBase feature
that lets the driver retain the cursor while committing changes. Soft commits improve
performance on updates to large sets of data.
When using hard commits, the BDE must re-fetch all records in a dataset, even for a
single record change. This is less expensive when using a desktop database, because the
data is transferred in core memory. For a client/server database such as InterBase,
refreshing a dataset consumes the network bandwidth and degrades performance
radically. With soft commit, the cursor is retained and a re-fetch is not performed.
Note Soft commits are never used in explicit transactions started by BDE client
applications. This means that if you use the StartTransaction and Commit methods to
explicitly start and commit a transaction, then the driver flag for soft commit is ignored.


Setting the SQL pass-through mode
The SQLPASSTHRU MODE option specifies whether the BDE and passthrough SQL
statements can share the same database connections. By default SQLPASSTHRU MODE is
set to SHARED AUTOCOMMIT. To reduce the overhead that automatic transaction control
incurs, set this option to SHARED NOAUTOCOMMIT.
If, however, you want to pass transaction control to your server, set this option to NOT
SHARED. Depending on the quantity of data, this can increase InterBase performance by
a factor of ten.
The recommended setting for this option is SHARED NOAUTOCOMMIT.
Setting the SQL query mode
Set the SQLQRYMODE to SERVER to allow InterBase, instead of the BDE, to interpret and
execute SQL statements.
Resim
Resim ....Resim
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Bakın arkadaşlar. Elimden geldiğince uyarıyorum. Alpha sürümünde olan bir VT'yi projelerinizde kullanmayın. Kullanıyor da hata ile karşılaşıyorsanız buraya yazmayın. Gidin Firebird 'un bug database ine yazın. 1,5 sürümünde bu hata ile karşılaşmamışsan eğer 2.0 da bir hata olma olasılığı var.

Herşeyin son sürümü her zaman iyi değildir. Bunu unutmayın.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Hakikaten yaa. @coderlord demese farkına uyuyor daha olucam... :lol:

- Firebird-1.5.2.4731-Win32 stabil sürüm olduğuna göre bunu kullandığında aynı sorunu yaşıyor musun ? Asıl soru budur .. :wink:
Resim
Resim ....Resim
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

ya arkadaşlar ii de şimdide 2955 te kaldı bundan buyuk aktarma yapmıyor :lol:
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Cevapla