【发布时间】:2013-06-17 09:56:56
【问题描述】:
我尝试使用具有 expireDate 的管理单元 Backup-SqlDatabase,但出现错误: 参数 EXPIREDATE 的值无效。 谁能告诉我如何格式化这个参数?
这是我的代码:
$expirationDate = Get-Date
$expirationDate = $expirationDate.AddDays($expirationDelayInDays)
Backup-SqlDatabase -ServerInstance $serverInstance -Database $database -ConnectionTimeout 0 -BackupFile $outputFile -ExpirationDate $expirationDate
【问题讨论】:
-
根据文档过期日期应该是 DateTime 类型。但是,您似乎没有更新第二行的 $expirationDate 。你可以试试:
$expirationdate = $expirationdate.adddays($expirationDelayInDays) -
你说得对,我改变了代码......不是更好。我相信 $expirationDate 是 DateTime。
-
奇怪,因为代码对我有用,你为变量 $expirationDelayInDays 使用了什么值?可能不是格式问题,而是您传递的值确实无效,因为日期时间绝对是此参数将接受的唯一类型。
-
我用 7 表示 $expirationDelayInDays。对我来说 $expirationDate 是一个日期时间,我错了吗?
-
好的。看来 $expirationdate 不应该是 DateTime 类型! ...但是可以转换为日期时间的字符串。使用 $expidationdate = "2013-09-01" 时,它可以工作......但我相信转换中存在一个错误,因此 09 和 01 被颠倒了。
标签: sql-server powershell database-backups