mydb.ADOProcPublic.Close;
mydb.ADOProcPublic.Name:='Brush_out';
mydb.ADOProcPublic.Refresh;
//单步运行到下面一句,mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value得不到正确的值!
mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value:=Student_number.Text;mydb.ADOProcPublic.Parameters.ParamByName('@Card_TimeOut').Value:=Brush_time.Text;
mydb.ADOProcPublic.ExecProc;
Time_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Time_Cost'];
Money_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Money_Cost'].Value;
mydb.ADOProcPublic.Name:='Brush_out';
mydb.ADOProcPublic.Refresh;
//单步运行到下面一句,mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value得不到正确的值!
mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value:=Student_number.Text;mydb.ADOProcPublic.Parameters.ParamByName('@Card_TimeOut').Value:=Brush_time.Text;
mydb.ADOProcPublic.ExecProc;
Time_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Time_Cost'];
Money_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Money_Cost'].Value;
解决方案 »
- 添加记录而不会和数据库里原来的记录重复,代码如何写,要详细的
- Notebook 控件如何实现透明?
- 如何打开其他程序的菜单?(或者使用菜单快捷键也可以)
- 在LISTVIEW中选中多行,怎么样遍历被选中的行?
- 请高手们推荐些入门的书!
- 如何给ACTIVEFORM签名
- 怎樣用Delphi Code 實現 Access2000 Report 的 preview or print Action?
- 求delphi连接db2 数据库的字符川!
- 关于修改ini文件里数据的问题(在线,解决就给分)
- 我的应用服务器经常会处于龟息状态,检查内存和CPU的使用都很稳定,但是它就是不响应其他的请求,可能要过个十几分钟才行,请大家畅所欲
- 有没有这样的控件:让StringGrid的单元格有自动换行的功能?
- 如何将unicode转换为中文汉字?
try
mydb.ADOProcPublic.parameters.parambyname(@student_number').value:=IntToStrtudent_number.text);
except
//error handle
end
@Card_TimeCout也是类似的
(@Student_Number varchar(20),
@Card_TimeOut datetime,
@Time_Cost int OutPut,
@Money_Cost Money OutPut )AS
Begin
Update Useronline set BrushBZ=0,TimeMark=@Card_TimeOut,TimeCardOut=@Card_TimeOut,TimeCost=ABS(DATEDIFF([minute], TimeLogin, @Card_TimeOut)),MoneyCost=ABS(DATEDIFF([minute], TimeLogin, @Card_TimeOut))* student_xishu / 60,@Time_Cost=ABS(DATEDIFF([minute], TimeLogin, @Card_TimeOut)),@Money_Cost=ABS(DATEDIFF([minute], TimeLogin, @Card_TimeOut))* student_xishu / 60 Where Student_Number=@Student_number
Update Student Set Student_Money=Student_Money-@Money_Cost where Student_number=@Student_Number
INSERT into user_log ( Student_number,Student_money,TimeCardIn,TimeLogin,Timelogout,TimeCardout,Student_xishu,TimeCost,MoneyCost) Select Student_number,Student_money,TimeCardin,TimeLogin,TimeMark,TimeCardout,Student_xishu,TimeCost,MoneyCost from Useronline where Student_number=@student_number
Delete From UserOnline Where Student_Number=@Student_Number
return 0
end
GO
{mydb.ADOProcPublic.ExecProc;///////////这个不行就用这个
mydb.ADOProcPublic.open;}////////是不是需要返回一个数据集?
Time_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Time_Cost'];
Money_Cost.Text:=mydb.ADOProcPublic.Parameters.ParamValues['@Money_Cost'].Value;
//单步运行到下面一句,mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value得不到正确的值!是什么意思?你是想单步执行的时候查看mydb.ADOProcPublic.Parameters.ParamByName('@Student_Number').value的值吗?应该是看不到的。另外sqlserver默认的返回值就是0,所以没必要加return 0,我一般用return 返回一些错误状态码