2011-08-20 81 views
0

我必须比较两个.csv表单的数据。这两个.csv表具有复合主键,然后在另一个.csv表中添加两个.csv表中不常见的记录。然后我必须将第三张表的数据导出到访问数据库文件。如何导出.csv文件的数据以访问数据库文件

我正在使用perl获取两个.csv表中不常见的记录,并将这些记录放入另一个.csv文件。我不知道如何将第三个.csv文件的数据导出到访问数据库文件。请帮忙。

也让我知道是否有任何其他方式来做到这一点,除了使用Perl。

所有这些都是通过perl脚本或宏自动完成的。

+0

提示:导出csv以进行访问与从* access导入csv *相同。 – TLP

+0

您是否考虑过将两个CSV链接为Access中的表格,并简单地运行一个表格查询? – Fionnuala

回答

1

这应该很简单。
1.将csv表导入比较到访问数据库表(http://office.microsoft.com/en-us/access-help/import-or-link-to-data-in-a-text-文件HA0.aspx)
2.确保主键字段的表结构正确定义(应设置为数字
3.执行内部基于主键
我加入的两个表没有测试过,但它应该工作,基本上你想要选择所有不在table1或table2中的行到table3中,内部联接的内部嵌套查询会找到匹配的行,然后外部联合查询会拉入行不匹配

Select fields 
into table3 
from table1 
where table1.id not in (

Select table1.id 
from table1 
    inner join table2 
    on table1.id=table2.id 
) 
union table2 
where table2.id not in (
Select table1.id 
from table1 
    inner join table2 
    on table1.id=table2.id 
) 
+0

嘿峰会感谢您的帮助。但我需要自动化过程。应该有一个宏或perl脚本可以做abve的东西。 – abhijit

+0

创建一个自动输入和上面的查询并安排宏的宏:http://stackoverflow.com/questions/4001516/how-can-i-schedule-a-macro-to-run-automatically-in-access -2007 – Summit