我正在尝试使用 ODBC 连接插入数据并从 Excel 选择数据。我已经成功连接到它:
$dbh = new PDO("odbc:Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};Dbq=$file_name", $username, $password);
但是,我不确定如何查询 Excel,因为这方面的文档很少!我尝试这样做:
$query = "INSERT INTO $sheet ($cell) VALUES ($value)";
$result = $dbh->query($query);
但这会导致错误:
Array ( [0] => 07002 [1] => -3010 [2] => [Microsoft][ODBC Excel Driver] The Microsoft Office Access database engine could not find the object 'Sheet1'. Make sure the object exists and that you spell its name and the path name correctly. (SQLExecute[-3010] at ext\pdo_odbc\odbc_stmt.c:254) [3] => 07002 )
就对象而言,希望他们指的是 Excel 工作表?
感谢大家的帮助
最佳答案
您需要使用 ODBC 吗?我总是觉得这很痛苦*。
如果您不被迫使用 ODBC,我建议您尝试可用的 PHPExcel 类 here (非附属)它使我在很多场合都可以轻松地从 PHP 读取和写入 Excel。
如果您已使用 Excel 打开 Excel 工作表并验证它确实包含名为“Sheet1”的工作表,您可能需要扩大搜索范围 - 该工作表或单元格是否可能被锁定以防止编辑?这可能会导致最奇怪的错误。
关于php - 通过 ODBC 驱动程序和 PHP 使用 Microsoft Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5029531/