Kısa arka plan - Im cron üzerinden çalıştırmak için özel bir ithalat yazma yöneticisi. Temel bir işlemdir:
- Tablosundan tüm kayıtları silmek
- Tabloya bir dosya ya da bir dize yük verileri
Zor, ancak çünkü apocolyptic bu dizi id başında silemezsiniz şey işlemi sırasında yanlış giderse ben geri alma böylece bir işlem kullanmak ister. Ancak, bu süreç ile güncellenen bazı tabloların işlemleri desteklemiyor myisam vardır.
Yani asıl soru şu: Is there an easier way to detect the storage engine for a given table than doing a show create table
ve sonra strong> depolama motorunu almak için gerekenlere az ayrıştırma yapıyor - yani. id bu ekstra sorguyu önlemek istiyorum.
İkincisi: Ben aslında im hala sığacak Soem diğer parçaları yazarken henüz bu çalıştı sığınak - belki Zend_Db basitçe görmezden beginTransaction
, commit
, ve rollback
değilse Söz konusu tablo desteklenir?
Ayrıca Im Bunun için Zend_Db_Table kullanarak değil - sadece Adaptörü (Pdo_Mysql). Alternatif olarak her nasılsa daha zarif bir çözüm sağlar eğer ham PDO kullanmak için mükemmel istekli im.
(Nedenlerle bir dizi için bu özel uygulama için mysqlimport kullanarak ilgilenmiyor Im içine almak için gitmiyor im yüzden sadece tüm onun değil bir seçenek Diyelim)