簡體   English   中英

比較兩個表中的值,並將從第一個表中獲取的值插入第二個表中

[英]Compare the values in two tables and insert into the second table the value fetched from the first table

請幫助! 我有2個表:信息和消息信息的列為:

id  name   location   description  from
1    abc    def         ghijg      123
2    xyz    wqk        fdgbf       234
3    tuv    ghn        hndBD       345

消息的列為:

id   text     from          created_at
1    HI        123             12345
1    hey       123             12345
2    hello     234             98765

我想將新值插入到Message中,並用Info的ID的對應值設置id(在Message中)的值。 如示例所示,消息中的id 1告訴我們該行對應於Info表的id 1。

我正在編寫Java代碼以將新值插入到Message中。

我的表很大,因此我將Info的ID和名稱存儲到ArrayList中,然后將ArrayList中的ID與某些名稱值比較為空。 我使用for循環遍歷ArrayList,然后將名稱值與另一個從Twitter調用並插入到Message中的名稱值進行比較。 代碼是:

for(Bank v: bankid){   
    if(v.getName()== null || v.getName().equals(Name)){
        if(v.getName().equals(Name)){
            System.out.println(v.getId());
            ps.setString(1,v.getId());
        }
    }
}

從信息表中獲取的id值與其他值一起插入到Message中。

我無法插入任何新值。 我怎么做? 我正在使用以下語句:

 String sql = "INSERT INTO MESSAGE(ID,text,from,craeted_at) VALUES (ID,?,?,?)";
            PreparedStatement ps = conn.prepareStatement(sql);

請幫忙! 謝謝!

首先-

if(v.getName()== null || v.getName().equals(Name))

這行可以給你空指針異常 因此更改為

if(v.getName()!= null || Name.equals(v.getName()))

然后從准備好的語句Ex中插入值。

      ps.setInt(1,23);
      ps.setString(2,"Roshan");
      ps.setString(3, "CEO");
      ps.executeUpdate();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM