Windows Server 2012のWDACで使用できるPowerShellコマンドレット (Set-OdbcDriver) について

スポンサーリンク

Windows Server 2012では、Windows Server 2008 R2からActive Directory (AD)やフェールオーバー クラスタリング (WSFC) といったサーバー管理におけるPowerShellコマンドレットが強化、および追加されました。

各役割および機能に関するPowerShellコマンドレットのヘルプについて、オンライン上で公開されていますが、現時点では主に英語のみで日本語の情報はあまり公開されていないようです。

ここでは、Windows Server 2012のWindowsデータ アクセス コンポーネント (WDAC)に関するPowerShellコマンドレットの情報について、日本語としてオンライン上で備忘録として確認したいと思い、本ブログ上で纏めてみました (内容については「Get-Help」コマンドレットの-Fullオプションを用いて実行した結果を編集、補足したものとなります)。

この記事では、「Set-OdbcDriver」コマンドレットについて記載します (他のコマンドレットについては、「Windows Server 2012のWDACで使用できるPowerShellコマンドレットについて」を参照)。

■名前

Set-OdbcDriver

■概要

1つ、もしくは複数のインストールされたODBCドライバのプロパティを構成します。

■構文

Set-OdbcDriver [-InputObject] <CimInstance#MSFT_OdbcDriver[]> [-PassThru]
     [-SetPropertyValue <string[]>] [-RemovePropertyValue <string[]>]
     [-CimSession <CimSession[]>] [-ThrottleLimit <int32>] [-AsJob] [-WhatIf] [-Confirm]
     [<CommonParameters>]

Set-OdbcDriver [-Name] <string> [-PassThru] [-SetPropertyValue <string[]>]
     [-RemovePropertyValue <string[]>] [-Platform <string> {32-bit | 64-bit | All}]
     [-CimSession <CimSession[]>] [-ThrottleLimit <int32>] [-AsJob] [-WhatIf] [-Confirm]
     [<CommonParameters>]

■説明

Set-OdbcDriverコマンドレットは、1つ、もしくは複数のインストールされたODBCドライバのプロパティを構成します。-SetPropertyValueパラメーターを指定することでプロパティの追加、修正が可能であり、-RemovePropertyValueparameパラメーターを指定することでプロパティの削除が可能です。

ドライバーのインストール、およびアンインストールするためにはドライバー インストレーション プログラムを使用する必要があります。PowerShellコマンドレットを用いてドライバーのインストール、およびアンインストールを行うことはできません。

ODBCおよびドライバに関する詳細な情報については、Microsoft Open Database Connectivity (ODBC)、もしくはDriversを参照してください。

■パラメーター

-AsJob
バックグラウンド ジョブとして、コマンドレットを実行します。完了するまでに長時間要するコマンドを実行する場合、このパラメーターを使用します。 コマンドレットは、ジョブとして扱われるオブジェクトを返し、コマンドプロンプト上に表示します。ジョブが完了する間、セッション中で実行し続けることが可能です。ジョブを管理するために、*-Jobコマンドレットを使用済ます。ジョブの結果を得るためには、Receive-Jobコマンドレットを使用します。Windows PowerShellバックグランド ジョブに関する詳細な情報は、about_Jobsを参照してください。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-CimSession <CimSession[]>
リモート セッション内、もしくはリモート コンピューター上でコマンドレットを実行します。New-CimSessionコマンドレット、もしくはGet-CimSessionコマンドレットの出力のようなコンピューター名、もしくはセッション オブジェクトをに入力します。 既定ではローカル コンピューター上のカレント セッションとなります。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-Confirm
コマンドを実行する前に実行の是非を確認するプロンプトを表示します。

エイリアスcf
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-InputObject <CimInstance#MSFT_OdbcDriver[]>
指定されたODBC DSNドライバーによって表されるODBCドライバーを修正します。オブジェクトを含む変数を入力、コマンドを入力、もしくは取得するオブジェクトを表します。

エイリアスなし
必須true
位置1
既定値なし
パイプライン入力を許可するtrue (ByValue)
ワイルドカード文字を許可するfalse

-Name <string>
ドライバー名による1つもしくは複数のODBCドライバーを指定します。ワイルドカード文字列の使用が可能です。

エイリアスなし
必須true
位置1
既定値なし
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するtrue

-PassThru

パイプラインをとおしてコマンドレットで修正されるオブジェクトを通過します。既定では、コマンドレットはパイプラインをとおしてオブジェクトを取得することはできません。

設定した内容を表しているODBCドライバーを返します。既定では、コマンドレットは出力を生成することはできません。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-Platform <string>
ODBCドライバーのプラットフォーム アーキテクチャを指定します。 指定可能な値は、「32-bit」、「64-bit」、および「All」です。 このコマンドがリモートCIMセッションで実行されるならば、これはリモート マシンのプラットフォーム アーキテクチャです。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-RemovePropertyValue <string[]>
削除するODBCドライバーのプロパティ値を指定します。これは、削除されるキーの配列です。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-SetPropertyValue <string[]>
修正、もしくは追加するODBCドライバーのプロパティ値を指定します。それぞれの列が、<key>=<value>となっている配列の形式となります。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-ThrottleLimit <int32>
コマンドレットを実行するために設定することができる並列実行の最大数を指定します。このパラメータが省略される、もしくは値に0が入力される場合、 Windows PowerShellは、コンピューター上で動作しているCIMコマンドレットの数に基づいて、コマンドレットに対する最適のスロットル制限を計算します。スロットル制限は、現在のコマンドレットのみに適用され、セッションもしくはコンピューターには適用されません。

エイリアスなし
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。

エイリアスwi
必須false
位置named
既定値なし
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose-Debug-ErrorAction-ErrorVariable-WarningAction-WarningVariable-OutBuffer、および-OutVariable。詳細については、「about_commonparameters」と入力してヘルプを参照してください。

■入力

System.String[]
Microsoft.Management.Infrastructure.CimInstance[]
System.String

■出力

Microsoft.Management.Infrastructure.CimInstance[]
Microsoft.Management.Infrastructure.CimInstance#MSFT_OdbcDriver
Microsoft.Management.Infrastructure.CimInstance[]
Microsoft.Management.Infrastructure.CimInstance#MSFT_OdbcDriver

■エイリアス

なし

■メモ

このコマンドレットを含むモジュールのヘルプ ファイルをダウンロードしてインストールするには、Update-Helpを使用してください。

■例

例1

 Set-OdbcDriver &quot;SQL Server Native Client 10.0&quot; -Platform 32-bit -SetPropertyValue &quot;CPTimeout=60&quot; 

例1:説明

このコマンドは、「SQL Server Native Client 10.0」の32ビットドライバーに対して「CPTimeout」キーを値60に設定します。

例2

 Set-OdbcDriver &quot;SQL Server*&quot; -RemovePropertyValue &quot;aaa&quot; 

例2:説明

このコマンドは、ネイティブ プラットフォームの下にある「SQL Server」から恥じますすべてのドライバーに対して、「aaa」というプロパティを削除します。

例3

 Set-OdbcDriver -Name &quot;SQL Server Native Client 10.0&quot; -Platform All -RemovePropertyValue @(&quot;aaa1&quot;, &quot;aaa2&quot;) -SetPropertyValue @(&quot;aaa3=bbb3&quot;, &quot;aaa4=bbb4&quot;) 

例3:説明

このコマンドは、32ビットおよび64ビット アーキテクチャーの両方の下で、「SQL Server Native Client 10.0」ドライバーにたいして「aaa1」および「aaa2」プロパティを削除し、「aaa3」から「bbb3」、「aaa4」から「bbb4」へプロパティを設定します。

例4

 $driver = Set-OdbcDriver -Name &quot;SQL Server Native Client 10.0&quot; -Platform 32-bit -SetPropertyValue &quot;aaa=bbb&quot; -PassThru 

例4:説明

このコマンドは、「SQL Server Native Client 10.0」32ビット ドライバーに対して「aaa」キーから「bbb」キーへ設定し、ドライバー オプジェクトからPowerShell変数に格納します。

例5

 Get-OdbcDriver &quot;SQL Server Native Client 10.0&quot; -Platform All | Set-OdbcDriver -RemovePropertyValue @(&quot;aaa1&quot;, &quot;aaa2&quot;) -SetPropertyValue @(&quot;aaa3=bbb3&quot;, &quot;aaa4=bbb4&quot;) 

例5:説明

このコマンドは、Get-OdbcDriverコマンドレットからパイプライン オブジェクトを用いて、32ビットおよび64ビット アーキテクチャーの両方の下で、「SQL Server Native Client 10.0」ドライバーにたいして「aaa1」および「aaa2」プロパティを削除し、「aaa3」から「bbb3」、「aaa4」から「bbb4」へプロパティを設定します。

例6

 $driverArray = Get-OdbcDriver &quot;SQL Server Native Client 10.0&quot; -Platform All
Set-OdbcDriver -InputObject $driverArray -RemovePropertyValue @(&quot;aaa1&quot;, &quot;aaa2&quot;) -SetPropertyValue @(&quot;aaa3=bbb3&quot;, &quot;aaa4=bbb4&quot;) 

例6:説明

このコマンドは、PowerShell変数「$driverArray」を用いて、32ビットおよび64ビット アーキテクチャーの両方の下で、「SQL Server Native Client 10.0」ドライバーにたいして「aaa1」および「aaa2」プロパティを削除し、「aaa3」から「bbb3」、「aaa4」から「bbb4」へプロパティを設定します。

■関連するリンク

  • Get-OdbcDriver
  • Wdac

[参考]