gpt4 book ai didi

powershell - 如何正确传递参数?

转载 作者:行者123 更新时间:2023-12-03 00:50:43 29 4
gpt4 key购买 nike

请在下面查看我的功能:

Function Query {
param (
[string]$query
[string]$server
[string]$dbase
[string]$user
[string]$pass
)

if ($user) {
$connstr = "Server={0};Database={1};User ID={2};Password={3};Trusted_Connection=False;Connect Timeout=15" -f $server, $dbase, $user, $pass
}
else {
$connstr = "Server={0};Database={1};Integrated Security=True;Connect Timeout=15" -f $server, $dbase
}
$conn.ConnectionString = $connstr


switch ($query.Split()[0]) {
"SELECT" {
$cmd = New-Object System.Data.SqlClient.SqlCommand($query,$conn)
$adapter = New-Object System.Data.SqlClient.SqlDataAdapter($cmd)
$dataset = New-Object System.Data.DataSet
$adapter.Fill($dataset) | Out-Null
return $dataset
}
"UPDATE" {
$cmd = New-Object System.Data.SqlClient.SqlCommand($query,$conn)
return $cmd.ExecuteNonQuery()
}
"INSERT" {
$cmd = New-Object System.Data.SqlClient.SqlCommand($query,$conn)
return $cmd.ExecuteNonQuery()
}
}
}

Query -query "SELECT TOP 10 myField FROM myTable" -server "SQLEXPRESS" -dbase "TEST"

这行不通,Powershell ISE在 param部分给了我红色,但我不明白为什么。由于人们似乎有许多不同的方式来构造Powershell函数(我是一个初学者:)),我有些困惑。

如何使此功能起作用?

最佳答案

将逗号,放在参数之间:

Function SomeName {
Param ($param1,$param2,$param3)
}

等等。您可以在逗号后使用空格或换行符以提高可读性,这是大多数人所做的事情:
Function SomeName {
param (
$param1,
$param2
)
}

关于powershell - 如何正确传递参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28302922/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com