2017-03-06 5 views
0

Ich arbeite an Slack-Integration mit SQL Server. Ich habe die folgende Funktion, um Daten zum Durchhang zu senden. nachzulassenÜbergeben Sie Abfrageergebnis in SQL Server-Funktion

CREATE FUNCTION SlackChatPostMessage(
    @Token  nvarchar(max), 
    @Channel  nvarchar(max), 
    @Text  nvarchar(max), 
    @UserName nvarchar(max), 
    @IconUrl  nvarchar(max) 
) 
RETURNS TABLE(
    Ok   bit, 
    Channel  nvarchar(max), 
    TimeStamp nvarchar(max), 
    Error  nvarchar(max) 
) AS EXTERNAL NAME  SqlServerSlackAPI.UserDefinedFunctions.SlackChatPostMessage; 
GO 

Mein Ziel ist es, das Ergebnis einer Abfrage zu senden. Es ist mir gelungen, einen einfachen Text zu senden, der @Text-Variable in der Funktion verwendet. Ich bin jedoch nicht in der Lage, implementieren, wie ich ein Abfrageergebnis statt einfachen Text übergeben kann.

Hoffe die Frage ist klar.

SOLUTION: einfachste Weg ist, einen statischen Cursor zu schaffen und eine Schleife verwenden, jede Zeile in diese Funktion zu übergeben.

Antwort

1

Funktion SlackChatPostMessage übernimmt keine Tabellenvariable-Eingang, wenn Ihre Abfrage eine Tabelle zurückgibt, man kann die Tabelle Wert übergeben, wenn es sich um eine Einzelwertausgabe aus der Abfrage ist dies verwenden, bevor Sie es an die Funktion

senden
convert(nvarchar,(yourquery)) 
+0

Vielen Dank für Ihre Antwort. Ein Weg, den ich habe, ist mit Cursors. Ist das korrekt? – Bilal

+0

Sie meinen die Daten eins nach dem anderen mit dem Cursor? – Pream

+0

Ja. Ich habe es gemacht. Danke vielmals! :) – Bilal

Verwandte Themen