参数进去了没有?
AdoCmd.CommandType = adCmdStoredProc
AdoCmd.CommandText = "mysp_1"
AdoCmd.Parameters(1) = intp
AdoCmd.Execute
Me.MousePointer = vbDefault
MsgBox AdoCmd.Parameters(2).Value, vbInformation, "提示"
AdoCmd.CommandType = adCmdStoredProc
AdoCmd.CommandText = "mysp_1"
AdoCmd.Parameters(1) = intp
AdoCmd.Execute
Me.MousePointer = vbDefault
MsgBox AdoCmd.Parameters(2).Value, vbInformation, "提示"
[TrainID] [char] (9) NOT NULL ,
[StartCityID] [char] (3) NOT NULL ,
[TargetCityID] [char] (3) NOT NULL ,
[DaysConsuming] [int] NOT NULL ,
[DepTime] [char] (4) NOT NULL ,
[ArrTime] [char] (4) NOT NULL ,
[TrainNumber] [varchar] (10) NOT NULL ,
[TrainTypeID] [int] NOT NULL ,
[Discount] [int] NULL ,
[AwardNumber] [int] NULL ,
[Brokerage] [money] NULL ,
[ValidDate] [datetime] NULL ,
[Re] [varchar] (100) NULL ,
[RecordTimestamp] [timestamp] NULL ,
[DeleteFlag] [bit] NULL ,
[CreateDateTime] [datetime] NULL ,
[UpdateDateTime] [datetime] NULL
) ON [PRIMARY]
GO下面的存储过程对此表进行操作(根据id更新一条记录):/*============================================*/
create PROCEDURE pch_TrainUpdate
/*修改一条火车标信息*/
(
@TrainID char (9) ,
--@StartCityID char (3) ,
--@TargetCityID char (3) ,
@DaysConsuming int ,
@DepTime char (4) ,
@ArrTime char (4) ,
@TrainNumber varchar (10) ,
@TrainTypeID int ,
@Discount int ,
@AwardNumber int ,
@Brokerage money ,
@ValidDate datetime ,
@Re varchar (100) ,
@ReturnCode int output,
@RowCount int output
)
AS
set nocount on
Begin Transaction
Update pch_Train
set
--StartCityID=@StartCityID ,
--TargetCityID=@TargetCityID ,
DaysConsuming=@DaysConsuming,
DepTime=@DepTime ,
ArrTime=@ArrTime ,
TrainNumber=@TrainNumber ,
TrainTypeID=@TrainTypeID ,
Discount=@Discount ,
AwardNumber=@AwardNumber ,
Brokerage=@Brokerage ,
ValidDate=@ValidDate ,
Re=@Re ,
UpdateDateTime= getdate()
where TrainID=@TrainID
if @@error != 0 or @@rowcount != 1 goto RollbackAndReturn
select * from pch_Train(NOLOCK)
where TrainID = @TrainID
if @@error != 0 or @@rowcount != 1 goto RollbackAndReturn
goto CommitAndReturn
RollbackAndReturn:
rollback transaction
raiserror('更新pch_Train失败', 1,1)
goto returnresultset
CommitAndReturn:
commit Transaction
ReturnResultSet:
set @ReturnCode = @@error
set @RowCount = @@rowcount
return @ReturnCode
GO
Dim rs As ADODB.Recordset
Dim cn As ADODB.Connection
Set cm = New ADODB.Command
Set cm.ActiveConnection = cn
cm.CommandType = adCmdStoredProc
cm.CommandText = "mysp_1"
cm.Parameters.Append cm.CreateParameter("@inp", adInteger, adParamInput)
cm("@Inp") = Value
Set rs = cm.Execute
在程序中执行存储过程应该和在SQL中执行时一样的.