我正在尝试使用写入表Write-SqlTableData。由于它是公司数据库,因此名称已更改。
环境:
命令:
Write-SqlTableData -DatabaseName 'dbname' -ServerInstance sql1 -TableName tablename -InputData (1,'1346',$false,'CalendarInvite') -Force -SchemaName "dbo"
错误: Write-SqlTableData : Input array is longer than the number of columns in this table.
表格栏:
我不知道为什么会收到错误消息。四个值就足够了,我按列顺序给它们。
我也尝试使用哈希表,但是错误更加令人困惑。
哈希表: @{Scope=1;ContextID='1346';FeatureEnabled=$false;Type='CalendarInvite'}
错误: Write-SqlTableData : The given value of type String from the data source cannot be converted to type int of the specified target column.
我很困惑。我的命令怎么了?
编辑:该命令适用于我的测试SQL(13.0.1601.5),但适用于团队测试SQL(11.0.3156.0)。版本可能重要吗?
码:
$arr=@()
if($arr -ne $null){"NE"} else{"E"}
if($null -ne $arr){"NE"} else{"E"}
Run Code Online (Sandbox Code Playgroud)
输出:
E
NE
Run Code Online (Sandbox Code Playgroud)
这怎么可能 ?
我正在尝试在文件中找到回车符(\r)和新行(\n),但以下两个语句不返回任何内容:
Get-ChildItem -recurse | Select-String -pattern "\r" | group path | select name
Get-ChildItem -recurse | Select-String -pattern "\n" | group path | select name
Run Code Online (Sandbox Code Playgroud)
但是,tab(\t)转义字符似乎工作:
Get-ChildItem -recurse | Select-String -pattern "\t" | group path | select name
Run Code Online (Sandbox Code Playgroud) 我是Windows PowerShell的新手.我正在尝试将IIS的默认网站的SSL设置更改
Required SSL = false and client certificate = ignore为
Required SSL = true and client certificate = accept使用PowerShell(我必须将其配置为ansible playbook)我已搜索但未获得任何解决方案.
请帮助.任何线索或解决方案将不胜感激.:) 谢谢
我的脚本中有一个变量用于我的路径:
$path = "C:\project\"
Run Code Online (Sandbox Code Playgroud)
然后在一个函数我有:
function DoWork {
try
{
C:\project\myapp.exe /silent
}
catch
{
}
}
Run Code Online (Sandbox Code Playgroud)
我想用变量替换try块中的字符串文字.我已经尝试将$ {path}放在那里,并且($ path +"myapp.exe/silent")以及其他组合,但我似乎仍然得到错误.
用路径变量替换文字路径的正确方法是什么?
如何从特定键/值对开始拆分哈希表?
我有以下哈希表,只是更长:
Name Value ---- ----- Name Alpha Age 2 Position Trick Start date 01-01-31 End date Unknown Name Corax Age 21 Position Sneak Earnings 40'000 End Date Unknown Name Horus Age 22 Position Dead Why Heresy End date 03-30-30
我尝试Group-Object但失败了.
我特别想把它与名字分开,除名字,年龄和位置之外的一切都不一致.
我的实际问题是我想在为什么 = 异端时解析名称和年龄的哈希表,不幸的是,数据的原始来源是字符串列表,这就是我将其转换为哈希表的原因.
我有一个Powershell脚本,在它的开头有一个很大的帮助,用Get-Help命令显示- https://gist.github.com/MarkKharitonov/91698caf8c695902eacde2b6c7825bf1
我提供帮助的方式有两个问题.特别是与该.EXAMPLE部分.这是帮助的缩写版本(请参阅脚本完整版的超链接和帮助):
<#
.SYNOPSIS
Runs a WinDBG command or a script file.
...
.NOTES
The default is to scan for images using the .imgscan /l. One has to check first with the WinDBG GUI to see if this is necessary, because this is a time consuming operation.
.EXAMPLE
Please, find below a PowerShell session transcript showing the script invoked with the -Command parameter:
PS D:\tmp\cantestr52 - 06-09-2017> cat C:\Users\mkharitonov\runcdb.config.ps1
$Sosex = "E:\Utils\sosex\64\sosex.dll"
$CDB = "e:\Program …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个变量,它将使用powershell中的输出运算符命名文本文件.第一个例子是通常在没有变量(有效)的情况下完成的事情,第二个例子是我尝试这样做的方式(它不起作用).
例I:
"hello" >> janice.txt
Run Code Online (Sandbox Code Playgroud)
我们可以看到,示例I的结果将是一个名为janice.txt的文本文件
例II.
$i = "janice"
"hello" >> $i.txt
Run Code Online (Sandbox Code Playgroud)
我期望从示例II得到的结果将是一个名为:janice.txt的文本文件,就像第一个示例一样,因为变量$ i存储字符串"janice".
Powershell正在执行命令而没有错误,但没有创建.txt文件.我试图弄清楚为什么它不起作用,如果有的话,它是完全无关紧要的.
这是我第一次提出问题,所以如果它是罗嗦而且含糊不清,我会事先道歉.
我正在尝试创建一个CSV导出文件,其中包含数据电子表格中的所有行,其中显示了搜索电子表格中的ID。
我现在已经设法通过PowerShell创建了搜索元素,但是在将数据导出为CSV格式时遇到了麻烦。
以下是一些示例表,实际数据最多包含8个值(包括ID列),但保证仅前三个值可被填充。
数据表
+------+---------+---------+---------+---------------------+
| ID | Value 1 | Value 2 | Value 3 | Value 4 |
+------+---------+---------+---------+---------------------+
| 1234 | London | Serial1 | HP | Laptop User |
| 2345 | Moscow | Serial7 | | HR Application |
| 1234 | London | Serial9 | | Finance Application |
| 3456 | Madrid | Serial4 | HP | Laptop User |
+------+---------+---------+---------+---------------------+
搜索电子表格
+------+
| ID |
+------+
| 1234 |
| 2345 | …
此链接指向Get-Childitem2,该功能允许遍历260个字符的限制.
https://gallery.technet.microsoft.com/scriptcenter/Get-ChildItemV2-to-list-29291aae#content.
这是一个非常好用的功能,然而,它误报文件大小超过~3.5GB,这是我运行它的全部原因.我很难承认我只是不够好找到并修复代码,所以它准确地报告文件大小超过~3.5GB.
我想它在这里的某个地方; 因为似乎没有'nFileSizeHigh'选项:
} Else {
$Object.Length = [int64]("0x{0:x}" -f $findData.nFileSizeLow)
$Object.pstypenames.insert(0,'System.Io.FileInfo')
}
Run Code Online (Sandbox Code Playgroud)
我选择了Robocopy和AlphaFS,因为我对它们都有各种各样的问题.文件大小问题示例:
get-childitem C:\ Temp\Huge :(正确的大小,以字节为单位)
3166720000 - sp1_vl_build_x64_dvd_617403.iso
5653628928 - server_2016_x64_dvd_9327751.iso
4548247552 - it_English_-3_MLF_X19-53588.ISO
get-childitem2 C:\ Temp\Huge:
3166720000 - sp1_vl_build_x64_dvd_617403.iso
1358661632 - server_2016_x64_dvd_9327751.iso
253280256 - it_English_-3_MLF_X19-53588.ISO