2013-03-11 165 views
0

我有一个存储过程,它有2个参数@from,@to,我想传递@ from $ from的值,这是从powershell GUI输入的。我希望@to在@from之后1天。我有下面的代码。似乎将哪个值传递给@from,但是值不会传递。任何建议?在PowerShell中的AddDays

$param1=$sqlcmd.Parameters.Add("@from" , [System.Data.SqlDbType]::DateTime) 
$param1.Value=Get-Date $from -format "yyyy-MM-dd HH:mm:ss.fff" 
$param2=$sqlcmd.Parameters.Add("@to", [System.Data.SqlDbType]::DateTime) 
$param2.Value=Get-Date ($from).AddDate(1) -format "yyyy-MM-dd HH:mm:ss.fff" 

回答

2

如果我从以前的问题没有记错,$from是一个字符串,而不是一个日期。您不能将日期添加到字符串,因此您需要先将其转换为日期。您还需要.AddDays(1),而不是.AddDate(1)

$param2.Value = Get-Date (Get-Date $from).AddDays(1) ` 
    -format "yyyy-MM-dd HH:mm:ss.fff" 
+0

感谢,它的工作,但是,即使我能看到的$参数1和$参数2的值是什么,我想,现在的PowerShell抛出一个错误,说我没有为@from – Apriljuly 2013-03-11 20:30:45

+0

提供值@Apriljuly无看到实际的错误信息,我无法做到这一点。 – 2013-03-11 22:37:30