我當前使用的Web應用程序有一個文件導入邏輯。邏輯從模式中查找包含最少字符的匹配記錄 - Oracle/Java
1>從文件中讀取記錄[EXCEL或TXT],
2>示出的進口[新記錄被標記爲新如果在數據庫中不存在,它們中的所有記錄的不可編輯格現有記錄標記爲更新]和
3>轉儲數據庫中的記錄。
包含與文件中以下格式接觸文件(反映在與主鍵First_Name, Last_Name
數據庫中的列):
First_Name, Last_Name, AddressLine1, AddressLine2, City, State, Zipcode
我們正在運行到的問題是,當存在不同的值的在文件中輸入相同的實體。例如,有人可能會爲紐約輸入紐約,而其他人會輸入紐約。同樣適用於名字或姓氏前。約翰邁爾斯和約翰邁爾提到同一個人,但由於記錄不完全匹配,它插入記錄,而不是重新使用它的更新。
例如,從文件記錄(請注意名稱和地址的使用,純屬巧合:)):
John, Myers, 44 Chestnut Hill, Apt 5, Indiana, Indiana, 11111
,並在數據庫中的記錄:
John, Myer, 80 Washington St, Apt 1, Chicago, IL, 3333
系統應該檢測到該文件中的記錄爲現有記錄[因爲姓氏爲Myers
和Myer
,因爲名字完全匹配]並對地址進行更新,而是插入一個新值。
我該如何處理這個問題,我希望找到所有可以在數據庫中的現有記錄上執行匹配的記錄?