javascript如何将文本文件数据与sql server表数据进行比较。我想要记录与记录的比较
我有一个文本文件和一个数据库连接,即SQL Server。我想要的是比较文件和数据库的记录
我正在寻找一种解决方案,可以帮助我比较各个记录,而不是在数据库中创建一个临时表,或者从数据库记录创建一个文件,然后进行比较
ResultSet rs=stmt.executeQuery(SQL_Query);
ResultSetMetaData rsMetaData = rs.getMetaData();
String aName = rsMetaData.getTableName(1);
System.out.println(aName);
int numberOfColumns = rsMetaData.getColumnCount();
// System.out.println("resultSet MetaData column Count = " + numberOfColumns);
while(rs.next())
{
for (int i = 1; i <= numberOfColumns; i++) {
// get the designated column's table name.
String ColumnName = rsMetaData.getColumnName(i);
//System.out.print( ColumnName + " = ");
String ColumnValue = rs.getString(i);
// System.out.println(ColumnValue+"\t");
map.put(ColumnName, ColumnValue);
}
//System.out.println();
}
// retrieve all key pairs present in a Table
//Retrieving the number of key-value pairs
System.out.println("the number of key-value pairs: "+map.size()+"\n");
// retrieve all key-value pairs present in a Table
Set<Entry<String, String>> keyValueSet = map.entrySet();
for (Entry<String, String> entry : keyValueSet)
{
System.out.println(entry.getKey()+" : "+entry.getValue());
}
文本文件结构如下所示
始发|系统| ID | CFI |代码| CUSIP |描述1| PHEWYJHNVNW | DBFGBR | 037833100 | GB0000424886
# 1 楼答案
因为DB的搜索引擎比比较java内存中的对象更快。。。我建议您创建临时表
如果没有,只需从文件中加载对象,并按主键在数据库中搜索记录是否存在,然后比较所需的字段
如果你想要更详细的解决方案,你应该指定你正在使用的技术
编辑建议的解决方案:
加载文件并按id查询BD,如果匹配,则比较字段
假设它是一个“CSV”文件,每行都有一个条目: