SQL Server 2005 使用 GETDATE() 作为参数通过 SSIS 运行存储过程
我一直在寻找这个问题的答案,但找不到。我想使用 Visual Studio 2005 和 SQL Server 2005 设置一个 SSIS 包,它将今天的日期 (GETDATE()) 作为参数发送到存储过程。我可以找到如何发送参数,但不知道如何将该参数声明为 GETDATE()。这可能吗?
I've been searching for an answer to this and I can't find it. I want to set up an SSIS package using Visual Studio 2005 and SQL Server 2005 that will send today's date (GETDATE())as the parameter to a stored procedure. I can find how to send a parameter, but not how to declare that parameter to be GETDATE(). Is this even possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您需要不断评估时间(例如 GETDATE()),请在 SSIS 中创建一个名为
GetDate
的变量,其数据类型为 DateTime。右键单击属性窗口,检查 EvaluateAsExpression = True,对于表达式,使用GETDATE()
现在将该变量连接到执行 SQL 任务。
如果您此时不需要,请考虑使用系统作用域变量之一。执行 SQL 任务的 ContainerStartTime 可能就足够了。我的首选值是
StartTime
,因为这是包开始执行的时间,但您最清楚哪一个最适合您。If you need a constantly evaluating time, like GETDATE() then, create a Variable in SSIS called
GetDate
with a Data Type of DateTime. Right click and on the properties window, check the EvaluateAsExpression = True and for the Expression, useGETDATE()
Now wire that variable up to the Execute SQL Task.
If you don't need this very moment, look at using one of the system scoped variables. The
ContainerStartTime
of the Execute SQL Task would probably suffice. My go to value is theStartTime
as that's when the package started execution but you'll know best which one is right for you.需要考虑的一种可能的解决方法。您可以将 GETDATE() 设置为存储过程中参数的默认值,然后在不使用该参数的情况下调用它。
One possible workaround to consider. You could make GETDATE() the default value for the parameter in the stored procedure and then call it without that parameter.