Hallo,<br>
ich benutze Delphi 4.0, IB 5.6. <br>
Innerhalb einer Stored Procedure rufe ich eine
andere Stored Procedure auf, die als Parameter
ein Blob-Feld hat, aber es kommt vom WISQL die Meldung
"parameter mismatch for procedure InsertBlobdaten"
<br>
Meine Stored Procedures:<br>
Create Procedure InsertBlobdaten(<br>
i_DatenSize Integer,<br>
i_Daten Blob sub_type 0,<br>
i_LastIdx Integer<br>
)<br>
Returns<br>
(r_LaufIdx Integer<br>
)<br>
AS<br>
Begin<br>
Insert Into T_Blobdaten <br>(DatenSize,Daten,LastIdx) values<br>
(:i_DatenSize,:i_Daten,:i_LastIdx);<br>
Select Max(LaufIdx) From T_Blobdaten Into r_LaufIdx;<br>
End !!<br>
<br>
Create Procedure InsertDefault_Blobdaten<br>
(i_MaxWert Integer)<br>
AS<br>
Declare Variable HLoop Integer;<br>
Declare Variable HDaten Blob sub_type 0;<br>
Begin HLoop = 0;<br>
HDaten = 12345; ??????????? <br>
While (HLoop < : i_MaxWert) Do <br>
Begin <br>
Execute Procedure InsertBlobdaten(1,HDaten,0);<br>
HLoop = HLoop+1;<br>
End<br>
Update T_Blobdaten Set LastIdx = 1 Where LaufIdx = :i_MaxWert;<br>
End !!<br>
<br>
Was mache ich falsch ? <br>
Im Microsoft-SQL-Server gibt es für diesen Fall
den Datentypen binary und bei Interbase ? <br>
<br>
Danke. <br>
Gruß <br>
Ralf Eberhard
ich benutze Delphi 4.0, IB 5.6. <br>
Innerhalb einer Stored Procedure rufe ich eine
andere Stored Procedure auf, die als Parameter
ein Blob-Feld hat, aber es kommt vom WISQL die Meldung
"parameter mismatch for procedure InsertBlobdaten"
<br>
Meine Stored Procedures:<br>
Create Procedure InsertBlobdaten(<br>
i_DatenSize Integer,<br>
i_Daten Blob sub_type 0,<br>
i_LastIdx Integer<br>
)<br>
Returns<br>
(r_LaufIdx Integer<br>
)<br>
AS<br>
Begin<br>
Insert Into T_Blobdaten <br>(DatenSize,Daten,LastIdx) values<br>
(:i_DatenSize,:i_Daten,:i_LastIdx);<br>
Select Max(LaufIdx) From T_Blobdaten Into r_LaufIdx;<br>
End !!<br>
<br>
Create Procedure InsertDefault_Blobdaten<br>
(i_MaxWert Integer)<br>
AS<br>
Declare Variable HLoop Integer;<br>
Declare Variable HDaten Blob sub_type 0;<br>
Begin HLoop = 0;<br>
HDaten = 12345; ??????????? <br>
While (HLoop < : i_MaxWert) Do <br>
Begin <br>
Execute Procedure InsertBlobdaten(1,HDaten,0);<br>
HLoop = HLoop+1;<br>
End<br>
Update T_Blobdaten Set LastIdx = 1 Where LaufIdx = :i_MaxWert;<br>
End !!<br>
<br>
Was mache ich falsch ? <br>
Im Microsoft-SQL-Server gibt es für diesen Fall
den Datentypen binary und bei Interbase ? <br>
<br>
Danke. <br>
Gruß <br>
Ralf Eberhard
Comment