首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >adDBTimeStamp -访问Server存储过程

问adDBTimeStamp -访问Server存储过程
EN

Stack Overflow用户
提问于 2014-06-02 21:27:33
回答 1查看 2.9K关注 0票数 2

我希望将日期变量从Access传递到Server存储过程。请看我的密码:

VBA:

代码语言:javascript
复制
searchDate = 03/07/2014
cmd.Parameters.Append _
        cmd.CreateParameter("@searchDate", adDBTimeStamp, adParamInput, , searchDate)

searchDate是格式化为MM/DD/YYYY的日期。

SQL:

代码语言:javascript
复制
ALTER PROCEDURE [dbo].[spAppendActivity]
    @searchDate as datetime,
AS
   SET NOCOUNT ON;

   delete * from tbl_activity_losses;

   select [Date] 
   into tbl_activity_losses 
   from tbl_master_rec 
   where [Date] = @searchDate

我收到一个ODBC错误声明

当从字符串转换日期和/或时间时,Microsoft转换失败。

任何关于如何将此日期字段传递给我的存储过程的帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-02 21:50:19

问题是adDBTimeStamp。它正在将简单的日期字符串转换为时间戳。(不是日期)

当将时间戳传递给存储过程时,SQL server不知道如何将该长字符串转换为日期。

将类型从adDBTimeStamp更改为adVarChar将使其保持为字符串,Server将知道如何正确解析它。

此外,还可以将存储过程类型从DateTime更改为varchar。Server将知道如何将其解析为日期。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24003576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档