仅将新条目从一个数据库表复制到另一个数据库表.访问,C#

本文关键字:数据库 复制 访问 另一个 一个 新条目 | 更新日期: 2023-09-27 18:36:09

我正在尝试创建一个应用程序,其中包含用户为自己隐藏的消息列表,而不会影响其他人。我认为最简单的方法是拥有一个包含所有消息的主数据库和一个带有额外列(例如隐藏 (bool) )的用户副本我几乎可以让它工作,但找不到一种方法来不复制已经存在的 emtry,同时保留已经存储的其他布尔值。

基本上,如何仅复制另一个数据库中不存在的数据库表的条目。

我尝试使用左联接(选择消息。消息,用户。隐藏从消息左加入用户在消息上。消息 = 用户。消息),但我不确定这是否有效,因为它给了我一个错误(FROM 子句中的语法错误)

举个例子:

消息数据库:

消息

米1
米2
米3

最初用户数据库为空,首次运行时应创建:

消息。。。。隐藏

m1.....F

m2......F

m3...........F

假设用户隐藏了所有消息,然后消息数据库更改为:

消息

米1

米3

米4

米5

用户数据库更改为

消息。。。。隐藏

m1.....T

m3...T

m4...F

m5...F

我正在使用 Access 和 C#,第一次对数据库做任何事情,抱歉,如果这是一个非常愚蠢的问题,找不到其他人问同样的事情。另外,如果我以完全错误的方式进行此操作,我不介意更好的方法的想法,尽管在实际应用程序中,两个数据库中都会有更多的列。

仅将新条目从一个数据库表复制到另一个数据库表.访问,C#

可能不是最好的方法,但至少我让它工作了。左连接确实有效,我认为之前的问题是用户是保留字

"SELECT messages.message, [User].hidden INTO temp FROM messages LEFT JOIN [User] ON messages.message = [User].message;"
"DROP table [User]"
"SELECT * INTO [User] FROM temp;"

当然,如果有人知道更好的实现,尤其是避免需要临时表的实现,我希望看到它。