LabVIEWForum.de - OUTPUT-String einer Stored Procedure "abgeschnitten"

LabVIEWForum.de

Normale Version: OUTPUT-String einer Stored Procedure "abgeschnitten"
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
[Bild: ei1.jpg]

Hallo,

ich verwende das NI-DB-Toolkit, um aktuell unter Lv10 auf eine MS-SQL-2008-Datenbank zuzugreifen.

Jetzt habe ich einige Stored-Procedures erstellt, die neben Übergabe-Werten auch "OUTPUT"-Werte haben, also z.B. etwas in der folgenden Art:
Code:
CREATE PROCEDURE [dbo].[test]
    @id int,
    @Info VARCHAR (2000) OUTPUT,
    @Fehler VARCHAR(255) OUTPUT

Der Aufruf der Prozedur klappt, so wie hier beschrieben:
http://digital.ni.com/public.nsf/websear...enDocument
http://digital.ni.com/public.nsf/allkb/0...00006326C4

Jetzt zu den seltsamen Phänomen, vielleicht kann es mir jemand erklären.

1) Die Rückgabewerte @Info oder @Fehler sind in LabVIEW auf exakt 23 Zeichen abgeschnitten, auch wenn innerhalb der SP ein längerer String erstellt wird. Übergabedefinition z.B. so:
[attachment=39292]
oder alternativ auch als "OUTPUT" definiert, das macht keinen Unterschied. Innerhalb des MS SQL Server Management Studio habe ich dieses Problem nicht, da kann der String die 2000 Zeichen lang sein. Hmm
2) Dass der Übergabewert @id in der Datenbank als "int" definiert ist, interessiert LabVIEW recht wenig. Wenn ich als Datentyp Long(I32) auswähle, bekomme ich einen Fehler, laut Fehlercluster Possible reason(s): ADO Error: 0x80020009. Definiere ich @id in LabVIEW als String, geht alles in Ordnung. Hmm

Kennt jemand diese Effekte? Mache ich etwas falsch? Kommen diese Phänomen aus LabVIEW oder aus ADODB?

Viele Grüße,
Jens
Push!

Gruß, Jens
Referenz-URLs