【发布时间】:2011-03-03 00:44:20
【问题描述】:
很抱歉这个问题,但我从未使用过 SQLite,我浏览了 SQLite 站点,下载了“Windows 预编译二进制文件”文件,试图让它们用于我的目的,但我不能,我看到了使用数据库的工作教程,表格。
我的任务是从 SQLite 获取数据并将它们放入 magento mysql DB。因此,我将 SQLite DB 转储文件作为 .db3 文件,txt 文件,其大小为 db 转储文件(20110125_SIZE)。
那么我如何将它导入 SQLite。如果你们中的任何人使用过 SQLite3,请帮助我理解 .db3 文件以及如何查看其中的记录。
我已将 sqlite3 db 转储为 dbname.db3,
然后我尝试从 php 连接这个 sqllite。这是我从论坛获得的示例代码。
$db = openDatabase();
unset($db);
function openDatabase() {
$dbFile = realpath('dbname.db3');
echo $dbFile . "\n";
$needDbCreate = !file_exists($dbFile);
$db = new SQLiteDatabase($dbFile) or die((file_exists($dbFile)) ? "Unable to open" : "Unable to create");
if($needDbCreate) {
}
return $db;
}
但是我遇到了致命的异常。
致命错误:未捕获的异常 带有消息的“SQLiteException” 'SQLiteDatabase::_construct() [sqlitedatabase.--construct]: 文件已加密或不是 数据库'在 C:\wamp\www\SQLITE\index.php:23 堆栈 跟踪:#0 C:\wamp\www\SQLITE\index.php(23): SQLiteDatabase->_construct('C:\wamp\www\SQL...') 1 C:\wamp\www\SQLITE\index.php(15): openDatabase() #2 {main} 抛出 C:\wamp\www\SQLITE\index.php 上线 23
但是当我用 PDO 尝试相同的 sqldump 时,我连接上了。
try {
$dbh = new PDO("sqlite:C:\wamp\www\SQLITE\dbname.db3");
echo 'Db Connected <br/>';
}
catch(PDOException $e)
{
echo $e->getMessage();
}
这里我不知道这个转储中可用的表列表,所以我如何查询它们以列出然后从中获取记录。
请帮我解决这个问题,通过 php 连接并浏览表格。
很抱歉在这里发帖回答 部分,我想强调 代码。
谢谢
【问题讨论】:
-
编辑了我的回复以涵盖应该编辑到原始问题中的问题部分:)