2017-04-16 165 views
0

我的任務是創建一個模板,該模板將由具有員工信息的業務用戶填充,然後我們的程序將使用外部表將其加載到數據庫中。從外部表中讀取Excel文件

但是,我們的商業用戶不斷地通過添加,刪除或重新排序字段來更改模板。

我確信使用XLSX而不是CSV,這樣我可以鎖定列標題,以便它們不能刪除,添加和重新排列列。 但是,當我查詢外部表時,它讀取XLSX時顯示非ASCII字符,因爲它在二進制文件中。

我該如何做以下任一項?

  1. 有效地讀取Excel文件從外部表
  2. 鎖定CSV文件的標題?

回答

0

你在這裏有什麼是一個政治問題,但你正在尋找技術修復。不太合適。

的問題有兩個半:

  1. 有人決定是收集用戶輸入電子表格中,它通常不是一個好主意。
  2. 用戶正在擺弄輸入格式,他們不應該這樣做。

修正是:

  1. 嚴格執行的數據結構。拒絕任何不註冊並使用戶編輯它們的CSV。當他們意識到他們只是爲自己創造更多工作時,他們會很快厭倦調整電子表格。但他們也會不滿,所以請考慮......
  2. 構建數據輸入屏幕。敲出電子表格網格界面非常簡單。 Java中不需要任何複雜的東西:Oracle的Apex專門用於這類事情。 Find out more

但是,如果你堅持使用Excel作爲用戶界面,我建議你看看安東夏侯雅伯的出色PLSQL as_read_xlsx包上阿美族網站。 Check it out。您可能需要用表格(可能是流水線)功能替換外部表格。