Birkaç db güncellemeleri tek bir (genel hata 2014) ardına yürütülürken

0 Cevap php

Ben numaralandırılmış. Sql güncelleme dosyaları listesinden DB güncellemek için bir yardımcı program yazdı. LastAppliedUpdate ve DB içindeki yeni mağazalar indeksi. Çalıştırdığınızda, bu lastAppliedUpdate okur ve db için de geçerlidir, emriyle, daha sonra tüm lastAppliedUpdate folowing güncellemeleri ve db lastAppliedUpdate değerini günceller. Temelde basit.

Sorun: programını başarıyla gerekli güncelleştirmeleri uygular, ama lastAppliedUpdate değerini saklamak için çalışırken, sonra bir hata karşılaştı:

Genel hata: diğer tamponsuz sorgular aktif iken 2014 sorguları yürütmek olamaz. PDOStatement :: fetchAll () kullanmayı düşünün. Kod sadece hiç mysql karşı çalıştırmak için gidiyor ise Alternatif olarak, PDO :: MYSQL_ATTR_USE_BUFFERED_QUERY niteliğini ayarlayarak sorgu arabelleğe etkinleştirebilirsiniz.

Herhangi bir fikir, bu ne anlama geliyor ve nasıl çözülebilir?

Aşağıdaki kodu özüdür. Bu Yii çerçevesinde bir php kod.

foreach ($numericlyIndexedUpdateFiles as $index => $filename)
{
    $command = new CDbCommand (Yii::app()->db, file_get_contents ($filename));
    $command->execute();
}
$metaData = MDbMetaData::model()->find();
$metaData->lastAppliedUpdate = $index;
if (!$metaData->save()) throw new CException ("Failed to save metadata lastAppliedUpdate."); 
// on this line, instead of throwing the exception that my code throws, if any,
// I receive the described above error

mysql sürümü: 5.1.50, php versiyonu: 5.3

edit: Yukarıdaki kod içinde bir işlem yapılır ve ben bunu istiyorum edilir.

0 Cevap