Aracılığıyla paylaş


sp_OAMethod (Transact-SQL)

Bir OLE nesnesinin yöntem çaðýrýr.

Topic link iconTransact-SQL sözdizimi kuralları

sp_OAMethod objecttoken , methodname
    [ , returnvalue OUTPUT ] 
    [ , [ @parametername = ] parameter [ OUTPUT ] [ ...n ] ] 

Bağımsız değişkenler

  • objecttoken
    Nesne simge kullanarak daha önce oluşturulan bir OLE nesnesinin iş sp_OACreate.

  • methodname
    OLE nesnesini aramak için yöntem adıdır.

  • returnvalue ÇIKIŞ
    Dönüş değeri, yöntem OLE nesnesinin.Belirtilmişse, bu uygun veri türünü, yerel bir değişken olmalıdır.

    Yöntem, tek bir değer döndürürse, ya da yerel bir değişken belirtin returnvalue, yerel değişkende dönüş değeri, yöntem) döndürür veya değil belirtme returnvalue, hangi yöntemin dönüş değeri istemciye geri tek sütunlu, tek satırlık bir sonucu olarak gönderir küme.

    yöntem Değerdir, bir OLE nesnesi döndürür. returnvalue bir yerel değişken veri türünde olmalıdır int. Bir nesne simge, yerel değişken olarak depolanır ve bu nesneyi bir simge ile diğer depolanan Otomasyonu yordamlar kullanılabilir.

    Yöntem döndüğünüzde değeri bir dizi ise returnvalue , NULL olarak küme belirtildi.

    Aşağıdakilerden herhangi biri oluştuğunda bir hata ortaya çıkar:

    • returnvalue belirtildi, ancak bu yöntem, bir değer döndürmüyor.

    • Yöntem, iki boyutlu bir dizi döndürür.

    • Yöntem, bir çıkış parametresi olarak bir dizi döndürür.

  • [ @parametername**=** ] parameter[ OUTPUT ]
    Iş bir yöntem parametresi.Belirtilmişse, parameteruygun veri türünü, bir değer olmalıdır.

    Bir çıktı parametresi, dönüş değerini elde etmek için parameter uygun veri türünü, yerel bir değişken olmalı ve ÇIKIŞ belirtilmeli.Sabit bir parametre belirtildi, ya da ÇIKIŞ belirtilmezse, bir çıktı parametresini gelen herhangi bir dönüş değeri yok sayılır.

    If specified, parametername must be the name of the Microsoft Visual Basic named parameter.Note that @parameternameis not a Transact-SQL local variable.The at sign (@) is removed, and parameternameis passed to the OLE object as the parameter name.Sonra tüm konum parametreleri belirtilirse, tüm adlandırılmış parametreleri belirtilmelidir.

  • n
    Yer tutucu, birden çok parametre belirtilmesini gösteren iş.

    Not

    @parametername Belirtilen parçası olduğundan, adlandırılmış bir parametre olabilir yöntem ve nesneye üzerinden iletilir.Bu saklı yordam için diğer parametreler 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 OLE Otomasyonu dönüş kodları ve hata bilgileri.

Sonuç Kümeleri

Yöntem bir veya iki boyutlu bir dizi değeri olan dönerseniz, dizinin istemciye sonuç olarak döndürülen küme:

  • Tek boyutlu BIR dizi tek satırlık bir sonucu olarak istemciye döndürülen küme dizideki öğelerin kadar çok sütun.Diğer bir deyişle, dizinin (sütun) olarak döndürülür.

  • Iki boyutlu BIR dizi sonuç olarak istemciye döndürülen küme kadar öğeleri boyutun ikinci dizi öğelerini kadar satır ve dizinin ilk boyutunun çok sütunlu.Diğer bir deyişle, dizinin (sütun, satır) olarak döndürülür.

Bir özellik dönüş değeri veya yönteminin dönüş değeri, dizesi biçimindedir. sp_OAGetProperty or sp_OAMethod bir sonuç döndüreceği için küme istemcisine.(Yöntem çıkış parametreleri dizi olamaz.) Bu yordamlar, uygun olarak belirlemek için dizideki tüm veri değerleri TaraSQL Server veri türleri ve veri uzunluğu sonuç her sütun için ayarlayın. Bu yordamlar, belirli bir sütun için o sütundaki tüm verileri göstermek için gerekli uzunluk ve veri türünü kullanın.

Bu veri türü, bir sütundaki tüm veri değerleri, aynı veri türünde paylaştırdığınız zaman, tüm sütun için kullanılır.Bir sütundaki veri değerlerinin farklı veri türleri, tüm sütun veri türü temel alınarak aşağıdaki grafikte seçilir.

 

int

float

Money

datetime

varchar

nvarchar

int

int

float

money

varchar

varchar

nvarchar

float

float

float

money

varchar

varchar

nvarchar

money

money

money

money

varchar

varchar

nvarchar

datetime

varchar

varchar

varchar

datetime

varchar

nvarchar

varchar

varchar

varchar

varchar

varchar

varchar

nvarchar

nvarchar

nvarchar

nvarchar

nvarchar

nvarchar

nvarchar

nvarchar

Remarks

Ayrıca sp_OAMethod bir özellik değeri alınamadı.

İzinler

Üyelik gerektirir sysadmin sabit sunucu rolü.

Örnekler

C.Yöntem çağırma

Aşağıdaki örnek çağrı Connect önceden oluşturulmuş yöntem SQL Server nesnesi.

EXEC @hr = sp_OAMethod @object, 'Connect', NULL, 'my_server',
    'my_login', 'my_password'
IF @hr <> 0
BEGIN
   EXEC sp_OAGetErrorInfo @object
    RETURN
END

b.Özellik alma

Aşağıdaki örnek alır HostName özellik (daha önce oluşturulmuş SQL Server nesnesi) ve bir yerel değişkende depolar.

DECLARE @property varchar(255)
EXEC @hr = sp_OAMethod @object, 'HostName', @property OUT
IF @hr <> 0
BEGIN
   EXEC sp_OAGetErrorInfo @object
    RETURN
END
PRINT @property