我正在尝试使用当前日期时间向数据表添加一个字段。我想在此处添加它,以便当我使用另一段代码创建表时,它会将其创建为日期时间(add-sqltable,因为它的值(value))。
#create the datatable
$quer = invoke-sqlcmd2 -serverinstance myservername -database "tempdb" -query "select @@servername as servername" -As 'DataTable'
#now add the datetime field
$quer.columns.add("InsDate",[DateTime])
此时我陷入了困境。这不起作用:
$quer | %{$_.InsDate = get-date}
我收到此错误消息:
Exception setting "InsDate": "Unable to cast object of type
'System.Management.Automation.PSObject' to type 'System.IConvertible'.Could
n't store <2/26/2013 11:26:23 AM> in InsDate Column. Expected type is DateTime."
更改格式也不起作用。有什么方法可以做到这一点吗?谢谢。
最佳答案
试试这个:
$quer | %{[datetime]$_.InsDate = get-date}
或者这个:
$quer | %{$_.InsDate = [datetime](Get-Date)}
我没有能力测试您的具体案例,但我相信其中一个应该可行。
编辑:将结束')'更改为'}'以修复答案。
关于powershell - 使用当前日期时间将日期时间添加到数据表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15095421/