PDO Veritabanı Bağlantıları Sorun

1 Cevap php

Bir yıldan önce ben PDO kullanmak benim kendi veritabanı sınıfları oluşturulmuş ve tüm hazırlamak, yürütmek, ve bağlantıları kapanış anlaştım. Bu sınıflar bugüne kadar büyük bir çalışma olmuştur.

Orada MySQL, kapma am iki farklı veritabanı sunucularının, ve MS SQL Express. Ben MySQL sunucusu bir çalışanın id almak ve MS SQL sunucusundan, çalışanların bilgi almak için kullanıyorum. MySQL sunucusu gelen ve benim program sadece aşağıdaki gibi bir hata ile çökmesini önce 1200 ile bunu yapıyor yaklaşık 11k kayıtları vardır.

Connection failed (odbc:Driver=FreeTDS;Servername=MSSQLExpress;Database=SMDINC) Class (PDOException)
SQLSTATE[08001] SQLDriverConnect: 0 [unixODBC][FreeTDS][SQL Server]Unable to connect to data source

Program veri kaynağına bağlanmak mümkün değil gibi görünüyor, ama bu daha önce aynı sorgu hakkında 30 kez çalışan ve hiçbir sorun yaşıyor. Ayrıca, ben iyice sorgu içine gelen tüm verileri kontrol ettikten ve tüm iyi görünüyor.

Ben sorunu oluşturulan birçok bağlantıları var olabilir inanıyorum, ama birçok farklı yerlerde tüm bağlantıları kapatmak için denedim ve hiçbir şey sorunu gidermekle gibi görünüyor. Herhangi bir hata ayıklama yardım ya da öneri mutluluk duyacağız!

Craig Metrolis

UPDATED

Tamam, ben sorgu hazırladıktan sonra closeCursor kullanarak ve yürütmek önce oldu, sorun bulundu. Ben closeCursor çıkardı ve bu sorunu düzeltilmiş gibi görünüyor .... AMA NEDEN? Bu bana hiç mantıklı değil .....

1 Cevap

PDOStatement::closeCursor() frees up the connection to the server so that other SQL statements may be issued, but leaves the statement in a state that enables it to be executed again.

Diğer bir deyişle, bu size bağlantınızı kapatıyordu.

Sorun oluşmadan önce 1200 kayıtlar aracılığıyla var neden hala olsa, açıklamak değildir.