我正在使用 Chad Miller & Hey Scripting Guy 的函数invoke-sqlcmd2和write-datatable将查询结果保存到数据表,然后将其写入 SQL 表。
这是我正在运行的代码:
$dt = invoke-sqlcmd2 -serverinstance $_.server -query "exec master.dbo.sp_who" -As 'Datatable'
write-datatable -serverinstance "myserverhere" -DATABASE "dbainfo" -tablename "who_sp_results" -DATA $dt
我想在数据表中添加一个字段 - 我正在运行一个无法修改的 SP,并且想要添加服务器名称。我正在并行运行它,所以我不能使用临时表,我必须修改现有数据表或将其移动到新数据表。
- 如何复制/更改数据表以获取附加列并将其设置为另一个变量?
- 如果我们使用第二个数据表,因为我正在循环,我如何在 foreach 循环中的下一次运行之前“截断”它或清除它?
更新:从 $dt | 添加一行 选择对象 * 和 $dt | 获取成员
spid : 1
ecid : 0
status : background
loginame : sa
hostname :
blk : 0
dbname :
cmd : RESOURCE MONITOR
request_id : 0
RowError :
RowState : Unchanged
Table : {sa, sa, sa, sa...}
ItemArray : {1, 0, background , sa...}
HasErrors : False
这是 $dt | 的结果 获取成员:
类型名称:System.Data.DataRow
Name MemberType Definition
---- ---------- ----------
AcceptChanges Method System.Void AcceptChanges()
BeginEdit Method System.Void BeginEdit()
CancelEdit Method System.Void CancelEdit()
ClearErrors Method System.Void ClearErrors()
Delete Method System.Void Delete()
EndEdit Method System.Void EndEdit()
Equals Method bool Equals(System.Object obj)
GetChildRows Method System.Data.DataRow[] GetChildRows(string relationName), System.Data.DataRow[] GetChildRows(...
GetColumnError Method string GetColumnError(int columnIndex), string GetColumnError(string columnName), string Get...
GetColumnsInError Method System.Data.DataColumn[] GetColumnsInError()
GetHashCode Method int GetHashCode()
GetParentRow Method System.Data.DataRow GetParentRow(string relationName), System.Data.DataRow GetParentRow(stri...
GetParentRows Method System.Data.DataRow[] GetParentRows(string relationName), System.Data.DataRow[] GetParentRow...
GetType Method type GetType()
HasVersion Method bool HasVersion(System.Data.DataRowVersion version)
IsNull Method bool IsNull(int columnIndex), bool IsNull(string columnName), bool IsNull(System.Data.DataCo...
RejectChanges Method System.Void RejectChanges()
SetAdded Method System.Void SetAdded()
SetColumnError Method System.Void SetColumnError(int columnIndex, string error), System.Void SetColumnError(string...
SetModified Method System.Void SetModified()
SetParentRow Method System.Void SetParentRow(System.Data.DataRow parentRow), System.Void SetParentRow(System.Dat...
ToString Method string ToString()
Item ParameterizedProperty System.Object Item(int columnIndex) {get;set;}, System.Object Item(string columnName) {get;s...
blk Property System.String blk {get;set;}
cmd Property System.String cmd {get;set;}
dbname Property System.String dbname {get;set;}
ecid Property System.Int16 ecid {get;set;}
hostname Property System.String hostname {get;set;}
loginame Property System.String loginame {get;set;}
request_id Property System.Int32 request_id {get;set;}
spid Property System.Int16 spid {get;set;}
status Property System.String status {get;set;}