ハードなソフトの話

アクセスカウンタ

zoom RSS PowerShellでACE.OLEDBのエラー

<<   作成日時 : 2013/10/03 00:00   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

PowerShellを使ってMicrosoft 2007以降の形式のACCDBファイルを作成した場合:

$filename = "C:\Users\Public\Documents\t.accdb"
$cnstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=$filename"
$cat = New-Object -ComObject "ADOX.Catalog"
$db = $cat.Create($cnstr)
$db.Close()

PCの環境設定により下記のエラーが出力される:

"1" 個の引数を指定して "Create" を呼び出し中に例外が発生しました: "クラスが登録されていません"

このエラーは「64ビット版WindowsのPowerShellでJet.OLEDB のエラー 」の場合と同様にMicrosoft.ACE.OLEDB.12.0が存在しないために発生する。

ACE.OLEDB.12.0は、Microsoft Access データベースエンジン 2010 以降に含まれる。このため、Office 2007以降かAccess 2007以降がインストールされていれば、いつの間にかインストールされている。Office や Access をアンインストールすると同時にアンインストールされる。OfficeもAccessも持っていない場合は、Microsoft Access データベース エンジン 2010を下記のアドレスからダウンロードしてインストールすればいい:

Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント
http://www.microsoft.com/ja-jp/download/details.aspx?id=13255

このコンポーネントには32ビット版と64ビット版が存在する。64ビット版のWindows を使用している場合は、64ビット版をインストールと32ビット環境と64ビット環境の両方で実行可能になる。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
PowerShellでACE.OLEDBのエラー ハードなソフトの話/BIGLOBEウェブリブログ
文字サイズ:       閉じる