错了。传入的是execute p_findstore @Input
传出的是你在p_findstore中定义的变量,就像@Input一样的用法。
传出的是你在p_findstore中定义的变量,就像@Input一样的用法。
解决方案 »
- VS2003里dataGrid绑值的问题
- Finalize为什么无法重写?
- 谁对byte,bit,BitArray这样的位操作比较熟悉的进来帮帮我
- ReporView导出MSChart,如何在柱形图上显示y值?
- 关于xmlreader怎么批量读子节点
- 对C#获取当前目录的一些迷惑
- 急救,在线等 ,快点啊
- 请问,Java与Tomcat的服务器端,SmartClient客户端会有什么问题吗?
- DataTable的Copy()和Clone()引起“该行已经属于另一个表”的问题
- 什么是Default Button?
- PropertyGrid 问题:如何取得任一 GridItem 并检查它的值?
- 如何把一个字体的字符全部显示到一个文本框里?
ADOCommand.CommandText := 'p_findstore'??传入传出参数如何做呢?
commandtext:='execute p_findstore'+Str('@Input')
Execute;
var sYear :string;
begin
inherited;
if trim(dbedtWorkDate.Text) ='' then
begin
application.MessageBox('没有输入工作日期','提示',mb_ok) ;
dbedtWorkDate.SetFocus ;
exit;
end;
sYear := copy(trim(dbedtWorkDate.Text),1,4);
if astpEmployeeNo.Active then astpEmployeeNo.close;
astpEmployeeNo.Parameters.Clear ; // 调用存储过程 BDE
// astpEmployeeNo.StoredProcName := 'PROEMPLOYEENO';
// astpEmployeeNo.Params.CreateParam(ftString, 'SYEAR', ptInput) ;
// astpEmployeeNo.Params.CreateParam(ftString, 'RETURNEMPLOYEENO', ptOutput) ; // 调用函数 BDE
// astpEmployeeNo.StoredProcName := 'GETEMPLOYEENO';
// astpEmployeeNo.Params.CreateParam(ftString, 'SYEAR', ptInput) ;
// astpEmployeeNo.Params.CreateParam(ftString, 'RETURN_VALUE', ptResult) ;
// astpEmployeeNo.ParamByName('SYEAR').Value :=sYear ; // 调用存储过程 ADO
// astpEmployeeNo.ProcedureName :='PROEMPLOYEENO';
// astpEmployeeNo.Parameters.CreateParameter('SYEAR',ftString,pdInput,4,null) ;
// astpEmployeeNo.Parameters.CreateParameter('RETURNEMPLOYEENO',ftString,pdOutput,8,null) ; // 调用函数 ADO
astpEmployeeNo.ProcedureName :='FUNEMPLOYEENO';
astpEmployeeNo.Parameters.CreateParameter ('Param1',ftString,pdReturnValue,8,null) ;
astpEmployeeNo.Parameters.CreateParameter('SYEAR',ftString,pdInput,4,null) ;
astpEmployeeNo.Parameters.ParamByName('SYEAR').Value := sYear;
try
astpEmployeeNo.ExecProc ;
dbedtEmployeeNo.Text := astpEmployeeNo.Parameters.ParamByName('Param1').Value;
//dbedtNo.Text := astpEmployeeNo.Parameters.ParamByName('RETURNEMPLOYEENO').Value ; //过程调用
except
Application.MessageBox(pchar('产生函数有错,请重试'), '提示', MB_OK);
exit;
end;
end;
希望对你有帮助
System.Data.OleDb.OleDbCommand mycmd = new System.Data.OleDb.OleDbCommand(updatesql,DB.OleConn());
mycmd.CommandType = CommandType.StoredProcedure;
mycmd.Parameters.Add("@image",System.Data.OleDb.OleDbType.VarBinary);
mycmd.Parameters.Add("@bh",OleDbType.VarChar,20);
mycmd.Parameters.Add("@bh2",System.Data.OleDb.OleDbType.VarChar,20);
mycmd.Parameters.Add("@tbname",System.Data.OleDb.OleDbType.VarChar,50); mycmd.Parameters["@image"].Value = Content;
mycmd.Parameters["@bh"].Value =bh;
mycmd.Parameters["@bh2"].Value = bh2;
mycmd.Parameters["@tbname"].Value = tbname;
cn.Open();
cm=new SqlCommand("sp_decrypt",cn); cm.CommandType=CommandType.StoredProcedure;
SqlParameter param;
//add the input parameter
param = cm.Parameters.Add("@objectName", SqlDbType.NVarChar, 50);
param.Value =listTable_SP.SelectedItem.Text;
// Add the output parameter.
param = cm.Parameters.Add("@SqlText", SqlDbType.VarChar,4000);
param.Direction = ParameterDirection.Output; // Execute the command.
cm.ExecuteNonQuery();
强,delphi的调用例子都贴上!
de
用SqlParameter 对象,就像上面写的。
cn.Open();
cm=new SqlCommand("sp_decrypt",cn); cm.CommandType=CommandType.StoredProcedure;
SqlParameter param;
//add the input parameter
param = cm.Parameters.Add("@objectName", SqlDbType.NVarChar, 50);
param.Value =listTable_SP.SelectedItem.Text;
// Add the output parameter.
param = cm.Parameters.Add("@SqlText", SqlDbType.VarChar,4000);
param.Direction = ParameterDirection.Output; // Execute the command.
cm.ExecuteNonQuery();
补充 lyhold(让你飞) 的代码
object a = cm.Parameters[1].Value;
这样获取输出参数的值。