2011-10-27 47 views
0

PHPでMS Accessデータベースにアクセスする必要があります。PHPでMS Accessデータベースに接続

MSAccessファイルの名前が変更される可能性があります。そのため、PHP.netに表示されているDSNなしの接続文字列を使用しようとしています。

$mdbFilename='test.mdb'; 
$user = ''; 
$password = ''; 
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=$mdbFilename", $user, $password); 

エラーが発生しています。

Warning: odbc_connect(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Could not find file '(unknown)'., SQL state S1000 in SQLConnect in ... 

私はそのファイルに接続するための助けが必要です。

(ファイルの拡張子は、それが「.bws」のようなものだ「.MDB」でない場合は、追加の質問に何をすべきか)私はあなたが完全なパスが必要と考えてい

おかげ

答えて

2

だけでなく、ファイル名dbqパラメータで指定します。他のすべては大丈夫です。 .mdbは、アクセスデータベースファイルの標準拡張です。 .bwsはディスクイメージファイルです。あなたはそれを使用する前に、Daemon Toolsのようなものでファイルを解凍する必要があるかもしれません。

Windows Vistaでは、シンボリックリンクまたは7のための構文は、それがネットワーク共有上または別のOSからは動作しませんが、ハードリンク(/ H)は、あなたが行うことができます

MKLINK [[/D] | [/H] | [/J]] Link Target 

    /D  Creates a directory symbolic link. Default is a file 
      symbolic link. 
    /H  Creates a hard link instead of a symbolic link. 
    /J  Creates a Directory Junction. 
    Link specifies the new symbolic link name. 
    Target specifies the path (relative or absolute) that the new link 
      refers to. 

です実際のものと区別できないODBCドライバのターゲット。

+0

.bwsは実際にディスクイメージではありません。何人かの馬鹿が拡張子の名前を変更しました。しかし、私はそれを別のプログラムのように必要としているので、そのまま使用する必要があります。 – Sinan

+0

symlink本当に名前を変更せずに名前を変更する必要がある場合( 'man ln') – Louis

+0

ばかです! –

関連する問題