Aracılığıyla paylaş


Hatalar ve iletileri işleme

ODBC uygulama çağırdığında işlev, sürücü yürütür işlev ve iki yolla tanı bilgileri verir: Toplam başarılı veya başarısız bir ODBC işlevinin BIR dönüş kodu gösterir ve Tanılama kayıtları, işlev hakkında ayrıntılı bilgi sağlar. Tanılama kayıtları, bir üstbilgi kaydı ve durum kayıtları içerir.Işlevin başarılı olsa bile, en az bir tanılama kaydı, Üstbilgi kaydının döndürülür.

Tanı bilgilerini geliştirme saat sözdizimi hataları ve programlama hataları, geçersiz bir tanıtıcı olarak kodlanmış SQL deyimlerinde yakalamak için kullanılır.Çalışma sırasında kullanılır saat çalışma-CVE-2006-yakalamak üzere saat ihlallerine ve kullanıcı tarafından girilen bir SQL deyimi içinde sözdizimi hatası, hata ve uyarılar (örneğin, veri kesilmesi, kural.Program mantığı, dönüş kodları genellikle temel alır.

Örneğin, bir uygulama çağrıları sonra SQLFetch sonuç satırlarını alması küme, dönüş kodu gösterir olup olmadığını sonucu sonuna küme (SQL_NO_DATA), herhangi bir bilgi iletisi (SQL_SUCCESS_WITH_INFO) döndürüldü veya bir hata (SQL_ERROR) ulaşıldı.

If the SQL Server Native istemci ODBC driver returns anything other than SQL_SUCCESS, the application can call SQLGetDiagRec to retrieve any informational or error messages.Kullanımı SQLGetDiagRec iletinin yukarı ve kapalı kaydırmak için küme birden fazla ileti.

Dönüş kodu SQL_INVALID_HANDLE her saat bir programlama hatası gösterir ve hiçbir saat çalıştırma sırasında karşılaşılan.SQL_ERROR bir programlama hatası gösterebilir, ancak diğer dönüş kodları çalışma zamanı bilgileri, sağlar.

The original Microsoft SQL Server native API, DB-Library for C, allows an application to install callback error-handling and message-handling functions that return errors or messages.Bazı Transact-SQL DB Kitaplığı ileti işleyicisi işlev yerine bir sonuçlar kümesi için sonuçlar gibi PRINT RAISERROR, DBCC ve küme, deyimleri dönün. Ancak, ODBC API, böyle bir geri arama özelliği vardır.Zaman SQL Server Yerel istemci ODBC sürücüsü geri gelen postaların algılar. SQL Server, ODBC dönüş kodu, SQL_SUCCESS_WITH_INFO veya SQL_ERROR ayarlar ve iletinin bir veya daha fazla tanılama kayıtları döndürür. Bu nedenle, bir ODBC uygulaması dikkatle bu dönüş kodları ve arama için sınamalısınız SQLGetDiagRec iletinin verileri almak için.

Izleme hataları hakkında daha fazla bilgi için bkz: Veri erişim izleme.