sp_OAGetErrorInfo (Transact-SQL)
OLE Otomasyonu hata bilgilerini alır.
sp_OAGetErrorInfo [ objecttoken ]
[ , source OUTPUT ]
[ , description OUTPUT ]
[ , helpfile OUTPUT ]
[ , helpid OUTPUT ]
Bağımsız değişkenler
objecttoken
Her iki nesne simge kullanarak daha önce oluşturulan bir OLE nesnesinin iş sp_OACreate veya NULL olur.If objecttoken olan hata bilgileri bu nesne için belirtilen döndürdü. NULL belirtilirse, tüm toplu iş için hata bilgileri verir.sourceÇIKIŞ
Iş kaynak hata bilgileri.Belirtilmişse, bir yerel olmalıdır char, nchar, varchar, veya nvarchar değişken. Dönüş değeri, gerekirse, yerel değişken sığacak şekilde kesildi.descriptionÇIKIŞ
Açıklama hata bağlıdır.Belirtilmişse, bir yerel olmalıdır Karakter, nchar, varchar, or nvarchar deðiþken.Dönüş değeri, gerekirse, yerel değişken sığacak şekilde kesildi.helpfileÇIKIŞ
OLE nesnesinin bir Yardım dosyası bulunur.Belirtilmişse, bir yerel olmalıdır char, nchar, varchar, veya nvarchar değişken. Dönüş değeri, gerekirse, yerel değişken sığacak şekilde kesildi.helpidÇIKIŞ
Yardım dosyası içeriğini ise KIMLIğIDIR.Belirtilmişse, bir yerel olmalıdır int değişken.Not
Bu saklı yordam parametreleri konuma göre değil adı belirtilmedi.
Dönüş Kodu Değerleri
0 (başarılı) veya OLE Otomasyon nesne tarafından döndürülen HRESULT Tamsayı değeri sıfır olmayan bir sayı (hata).
Yanıt HRESULT kodları hakkında daha fazla bilgi için bkz: OLE Otomasyonu dönüş kodları ve hata bilgileri.
Sonuç Kümeleri
Hiçbir çıktı parametresi belirtilirse, hata bilgilerini istemciye sonuç olarak kümesi verilir.
Sütun adları |
Veri türü |
Açıklama |
---|---|---|
Hata |
binary(4) |
Hata numarasını ikili gösterimi. |
Kaynak |
nvarchar(nn) |
kaynak hata. |
Açıklama |
nvarchar(nn) |
Hata açıklaması. |
Helpfile |
nvarchar(nn) |
Dosya kaynağı için Yardım. |
HelpID |
int |
Bağlam KIMLIĞININ Yardım kaynak dosyası içinde yardımcı olur. |
Remarks
Her bir OLE Otomasyonu çaðrý saklı yordamını'nın (dışında sp_OAGetErrorInfo) Hata sıfırlar bilgi; bu nedenle, sp_OAGetErrorInfo hata bilgisi için yalnızca en son saklanan Otomasyonu yordam çağrısı alır.Çünkü unutmayın. sp_OAGetErrorInfo hata bilgilerini sıfırlamak için birden çok kez, aynı hata bilgilerini almak için çağrılabilir.
Aşağıdaki tabloda, OLE Otomasyonu hatalar ve bunların genel nedenleri listeler.
Hata ve HRESULT |
Sık rastlanan nedeni |
---|---|
Bozuk değişken türü (0x80020008) |
Data type of a Transact-SQL value passed as a method parameter did not match the Microsoft Visual Basic data type of the method parameter, or a NULL value was passed as a method parameter. |
Bilinmeyen ad (0x8002006) |
Belirtilen nesne için belirtilen özellik veya yöntem adı bulunamadı. |
Geçersiz sınıf dize (0x800401f3) |
Belirtilen Progıd veya CLSID örneğinde bir OLE nesnesi olarak kayıtlı değil SQL Server. Bunlar kullanılarak örneği oluşturulmak önce özel bir OLE Otomasyon sunucusu kayıtlı olması gerekir sp_OACreate.Bu işlem içi (.dll) sunucuları için Regsvr32.exe yardımcı programını kullanarak yapılabilir veya / regserver yerel (.exe) sunucuları için komut satırı anahtarı. |
Sunucunun yürütme işlemi başarısız oldu (0x80080005) |
Belirtilen OLE nesnesi, bir yerel OLE sunucusu (.exe dosyası) olarak kaydedilir ancak .exe dosyasının bulunan başlatıldı veya. |
(0X8007007e) belirtilen modül bulunamadı |
Belirtilen OLE nesnesi, bir işlemdeki OLE sunucusu (.dll dosyası) kaydedilir, ancak .dll dosyası bulunamadı yüklenen veya. |
Tür uyuşmazlığı (0x80020005) |
Veri türü bir Transact-SQL döndürülen özellik değeri veya yöntem bir dönüş değeri saklamak için kullanılan bir yerel değişken eşleşmedi Visual Basic dönüş değeri, özellik veya yöntem bir veri türü. Veya, getiri değeri bir özellik veya yöntem istendi, ancak bir değer döndürmüyor. |
Veri türü veya sp_OACreate ', 'içerik' parametresinin değeri geçersiz.(0x8004275B) |
Içerik parametresinin değeri aşağıdakilerden biri olmalıdır: 1, 4 veya 5. |
Yanıt HRESULT kodları işlem hakkında daha fazla bilgi için bkz: OLE Otomasyonu dönüş kodları ve hata bilgileri.
İzinler
Üyelik gerektirir sysadmin sabit sunucu rolü.
Örnekler
Aşağıdaki örnek, OLE Otomasyonu hata bilgilerini görüntüler.
DECLARE @output varchar(255)
DECLARE @hr int
DECLARE @source varchar(255)
DECLARE @description varchar(255)
PRINT 'OLE Automation Error Information'
EXEC @hr = sp_OAGetErrorInfo @object, @source OUT, @description OUT
IF @hr = 0
BEGIN
SELECT @output = ' Source: ' + @source
PRINT @output
SELECT @output = ' Description: ' + @description
PRINT @output
END
ELSE
BEGIN
PRINT ' sp_OAGetErrorInfo failed.'
RETURN
END
See Also