如果在 UCanAccess 中不存在

Posted

技术标签:

【中文标题】如果在 UCanAccess 中不存在【英文标题】:IF NOT EXISTS in UCanAccess 【发布时间】:2019-07-17 10:57:12 【问题描述】:

我有以下代码,但 UCanAccess 不允许我使用 IF NOT EXISTS。有没有人有任何想法?

"if not exists (select ArtikelNr from Artikel where ArtikelNr='"+ValueRead.prüfen1()+"')" + 
                "begin" + 
                "    if not exists (select isa_id from Artikel where isa_id='"+Integer.parseInt(Data.textField.getText())+"')" + 
                "    begin" + 
                "INSERT INTO Artikel ([HERE ARE THE TABLES) VALUES 

[HERE ARE THE VALUES]

                "    end" + 
                "end";

【问题讨论】:

【参考方案1】:

你可以这样做:

// test data
int artikelNr = 123;
int isa_id = 1234;
String description = "artikel_123";

String sql = ""
        + "INSERT INTO Artikel (ArtikelNr, isa_id, description) "
        + "SELECT ? AS ArtikelNr, ? AS isa_id, ? as description "
        + "FROM DUAL "
        + "WHERE NOT EXISTS ("
        + "    SELECT * FROM Artikel "
        + "    WHERE ArtikelNr=? AND isa_id=?)";
PreparedStatement ps = conn.prepareStatement(sql);

// values to INSERT
ps.setInt(1, artikelNr);
ps.setInt(2, isa_id);
ps.setString(3, description);

// values for WHERE NOT EXISTS
ps.setInt(4, artikelNr);
ps.setInt(5, isa_id);

int rtn = ps.executeUpdate();
System.out.printf("%d row(s) inserted%n", rtn);

【讨论】:

以上是关于如果在 UCanAccess 中不存在的主要内容,如果未能解决你的问题,请参考以下文章

net.ucanaccess.triggers.TriggerException:表不存在。 :Z_2015_02_24

Android Studio:net.ucanaccess.jdbc.UcanaccessSQLException:错误文件不存在

如果存在,如何更新文档,如果在 mongodb 中不存在,如何将其插入?

如果路径在 C# 中不存在,则消息?

即使元素在 Selenium Python 中不存在,如果元素存在的条件仍然继续

检查列表中的对象是不是存在,如果在 R 中不存在则将其删除