2016-09-06 74 views
2

我想附加多個數據庫文件,並從中選擇。所有數據庫文件具有相同的一個表,只是不同的值。PHP的SQLite附加「沒有這樣的表」異常

這裏是我的方法:

try { 
$file_db = new PDO('sqlite:dbs/wifi_16-09-01_10_03_01.db'); 

$file_db->setAttribute(PDO::ATTR_ERRMODE, 
         PDO::ERRMODE_EXCEPTION); 

$file_db->exec("ATTACH DATABASE 'wifi_16-09-02_09_44_06.db' AS db2"); 

$result = $file_db->query('SELECT * FROM main.wifi UNION ALL SELECT * FROM db2.wifi'); 

$file_db = null; 
} 
catch(PDOException $e) { 
echo $e->getMessage(); 
} 

,誤差

SQLSTATE[HY000]: General error: 1 no such table: db2.wifi

我怎樣才能解決這個問題?

如果有更好的解決方案,我會使用它。

+0

您確定可以將換行符換成純字符串嗎? –

+0

是的,如果你指的是查詢字符串 – Elyor

回答

2

我研究了幾個小時後。我終於找到了解決方案。

提供附加的數據庫的完整路徑,如:

$file_db->exec("ATTACH DATABASE 'C:/Users/name/folder/Projects/htdocs/p1/dbs/yourdbfile.db' AS db2"); 

在我來說,我沒有給任何路徑,並且它XAMPP文件夾下生成數據庫文件。