sql - Microsoft Access - 如何将数据导入现有表并更新数据
问题描述
很简单,一个问题我也找不到答案。
我目前正在将 RAW 数据从 Excel 导入到我的 ACCESS 数据库。每天,我都会收到这些 RAW 数据的状态更新。
我有一个永远不会改变的字段/键,例如文档编号。但是,“状态”和“数量”等字段可以根据给定的情况而变化。
有没有办法让我将新文件导入现有数据并让它更新/覆盖与我的文档编号字段匹配的数据?
解决方案
在字段上创建一个唯一约束,这将是唯一的,然后您可以使用
UPDATE
MyAccessTable A
INNER JOIN MyLinkedExcelTable X
ON A.document_number = X.document_number
SET A.f1 = X.f1
然后使用插入缺失的
INSERT INTO MyAccessTable (f1, f2, .....)
SELECT f1, f2, ....
FROM MyLinkedExcelTable X
WHERE X.document_number NOT IN (SELECT Document_number FROM MyAccessTable)
推荐阅读
- ios - Swift 5 和 Alamofire 5:GET 方法错误:Alamofire.AFError.URLRequestValidationFailureReason.bodyDataInGETRequest(22 字节)
- javascript - 为什么在循环内声明对象不会删除对象数据?
- android - 没有虚拟方法 setTokenProvider
- db2 - db2 sql update 计算总计列单次更新
- c++ - 快速排序内存问题
- python - 图像未显示(python 中的 tkinter)
- c++ - CRTP 看不到派生类中定义的结构
- javascript - 如何在选择时检测 Vue.js 上的事件
- node.js - 使用 ssl 连接到副本集集群的 Mongoose 失败
- json - swift json帮助在表格视图控制器上显示数据