0

我正在尝试使用 PLSQL 打开、解析并将 .xlsx 文件中的内容保存到数据库。这可能吗 ?我在服务器上有我的文件,为该路径创建了对象,并为我的用户提供了权限 rw。我应该使用 PLSQL 从 XLSX 转换为 CSV 吗?这是可能的还是有其他方法来处理 XLSX 文件?

到目前为止我尝试的是这个,但我得到了例外

ORA-22288: 文件或 LOB 操作 FILEOPEN 失败

试图赋予我的对象权利,但它仍然无法正常工作。

4

1 回答 1

2

假设您只想手动上传少量电子表格(而不是需要定期或大量自动上传),那么将 excel 文件中的行插入数据库的最简单方法是将列添加到生成为 SQL 插入的表中陈述。

例如:

如果 excel 工作表在 columns 中有数据AB并且C有一个标题行:

ROWS A        B       C
1    id       value1  value2
2    1          23.0  Smith
3    2          42.7  O'Brien
4    3          59.6  Jones

然后在单元格中D2放置:

="INSERT INTO table_name ("&A$1&","&B$1&","&C$1&") VALUES ("&A2&","&B2&",'"&SUBSTITUTE(C2,"'","''")&"');"

然后将公式复制并粘贴到D3-D4表格中,使表格如下所示:

ROWS A      B       c        D
1    id     value1  value2  
2    1        23.0  Smith    INSERT INTO table_name (id,value1,value2) VALUES (1,23,'Smith');
3    2        42.7  O'Brien  INSERT INTO table_name (id,value1,value2) VALUES (2,42.7,'O''Brien');
4    3        59.6  Jones    INSERT INTO table_name (id,value1,value2) VALUES (3,59.6,'Jones');

最后,复制生成的 SQL 语句并在 SQL Plus 中运行。

于 2018-09-04T09:01:24.380 回答