B
brokensun
Unregistered / Unconfirmed
GUEST, unregistred user!
在 MS SQL6.5 中建存储过程如下(CDataStore):
CREATE PROCEDURE CDataStore(@sqlstring text) AS EXEC (@sqlstring)
在 Delphi4 中建 TStoredProc,名为 SPSun:
SPSun.Params[1].DataType->ftBlob
SPSun.Params[1].Name->@sqlstring
SPSun.Params[1].ParamType->ptInput
有关函数如下(在TDMCall类中):
function TDMCall.DataProcess(pSQL: String):Boolean;
begin
Result:= False;
try
SPSun.ParamByName('@sqlstring').AsString:=pSQL;
SPSun.Prepare ;
SPSun.ExecProc ;
SPSun.UnPrepare ;
Result:= True;
except
on E: Exception do ShowMessage(E.Message);
end ;
end;
例:
Q:='UPDATE Table1 SET Field1=12,Field2=23 WHERE ID=1';
DataProcess(Q);
现有如下问题:
数据库为 MS SQL6.5 (当数据库为 MS SQL7.0 时,不会出现如下错误)
使用DBE通过ODBC访问数据
当Q长度大于255个字节后,ODBC出现右超长错误.
请问如位大虾,出现上面问题,是在下在哪犯了错误,该如何解决!
注: SPSun 一定要为通用存储过程,而不能为专用,否则无意义.
CREATE PROCEDURE CDataStore(@sqlstring text) AS EXEC (@sqlstring)
在 Delphi4 中建 TStoredProc,名为 SPSun:
SPSun.Params[1].DataType->ftBlob
SPSun.Params[1].Name->@sqlstring
SPSun.Params[1].ParamType->ptInput
有关函数如下(在TDMCall类中):
function TDMCall.DataProcess(pSQL: String):Boolean;
begin
Result:= False;
try
SPSun.ParamByName('@sqlstring').AsString:=pSQL;
SPSun.Prepare ;
SPSun.ExecProc ;
SPSun.UnPrepare ;
Result:= True;
except
on E: Exception do ShowMessage(E.Message);
end ;
end;
例:
Q:='UPDATE Table1 SET Field1=12,Field2=23 WHERE ID=1';
DataProcess(Q);
现有如下问题:
数据库为 MS SQL6.5 (当数据库为 MS SQL7.0 时,不会出现如下错误)
使用DBE通过ODBC访问数据
当Q长度大于255个字节后,ODBC出现右超长错误.
请问如位大虾,出现上面问题,是在下在哪犯了错误,该如何解决!
注: SPSun 一定要为通用存储过程,而不能为专用,否则无意义.