我在Poweshell的SQL语句中将关键字“ like”视为“ =”符号

时间:2019-01-22 15:44:18

标签: sql powershell

我在Powershell中的SQL查询中的like语句未产生预期的结果。我的“喜欢”声明被当作“ =”符号对待。

例如

我有一个具有以下值的表:

   FieldNames
1. George Bush;George Foreman;Mary jones;
2. George Foreman;
3. George Foreman; Michael Smith;
4. Mary Jones;George Foreman

变量:

$Expression = "George Foreman"

我尝试过的三个选项:

1。

Select FieldNames from table where FieldNames like '%$Expression%'

2。

Select FieldNames from table where FieldNames like '%$($Expression)%'

3。

Select FieldNames from table where FieldNames like '%George Foreman%'

我对所有三个选项都收到相同的结果(仅返回第2行)。我希望所有行都能返回。
我可以在SSMS中运行相同的查询,并且所有行都会返回。

有人遇到过这个问题吗?或者对我如何修改选择查询以使用“喜欢”获取所有行有任何建议?


Formatted Powershell expression:

#Variables:
$Expression = "George Foreman"
$UserName = "UserName"
$password = "Password"
$Database = "Database"
$Server =  "Server"

$Query="Select FieldNames from table where FieldNames like '%$Expression%' "

$ConnectionString = "Server=$Server ;User ID=$UserName; password=$password; 
 Integrated Security=True; database=$Database;"

$connection = New-Object System.Data.SqlClient.SqlConnection

$connection.ConnectionString = $connection 

$connection.Open()
$command = $connection.CreateCommand()

$command.CommandText = $Query

$result = $command.ExecuteReader()

$connection.Close()

0 个答案:

没有答案