delphi 调用SQL 存储过程总结
delphi 调用存储过程—总结
在网上搜了很多方法? 希望大侠能在这做个总结
我的存储过程
- SQL code
CREATE PROC P2 (@Acc_No VARCHAR(20), @Acc_Date DATETIME )ASINSERT INTO Db_AccBookCheck(Acc_No,Acc_Date,Today_Money,Yesterday_Money)SELECT B.Acc_No,A.Acc_Date , (B.Today_Money+ISNULL(A.Mo,0)) As Today_Money,(B.Today_Money) AS yesterday_MoneyFROM(SELECT Acc_No, Acc_Date,SUM(In_Money-Out_Money) AS MoFROM Db_AccbookWHERE Acc_Date >= DATEADD(DD,-1,@Acc_Date) AND Acc_Date<@Acc_Date GROUP BY Acc_No,Acc_Date) A RIGHT OUTER JOIN(SELECT Acc_No,Acc_Date, Today_MoneyFROM Db_AccBookCheckWHERE Acc_Date=DATEADD(DD,-1,@Acc_Date) ) B ON A.Acc_No=B.Acc_NoGO
根据 ACc_No 和 Acc_Date 想求出今日余额和昨日余额
请大侠把自己的方法多用出来瞧瞧!!
不知有谁用过MSStoredProc这个控件没有
[解决办法]
exec P2 '0001','2012-01-01'
[解决办法]
楼主是想在DELPHI里调存储过程?放个TADOStoredProc
- Delphi(Pascal) code
with adoproc do begin Close; ProcedureName := 'P2'; Parameters.Refresh; Parameters.ParamByName('@Acc_No').Value := 'adfdsf'; Parameters.ParamByName('@END_DATE').Value := formatdatetime('yyyy-mm-dd',now); open;
[解决办法]
插入的值是从SELECT B.Acc_No,A.Acc_Date ...来的,所以可以判这个查询的结果是有重复的