Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MyBatis 'IN' क्लॉज में सूचियाँ

जब सूचियों के साथ प्रयोग किया जाता है, तो आइटम विशेषता द्वारा निर्दिष्ट मान का उपयोग foreach टैग के अंदर किया जाना चाहिए। नीचे के रूप में प्रयोग करें:

    <foreach item="sId" collection="stripperIds" separator="," open="(" close=")">
        #{sId}
    </foreach>

सूची का उपयोग करते समय अनुक्रमणिका विशेषता अनिवार्य नहीं है। अधिक जानकारी के लिए MyBatis डॉक्स अनुभाग देखें, या DTD देखें - http:// mybatis.org/dtd/mybatis-3-mapper.dtd मापदंडों के बारे में अधिक जानकारी के लिए:

    <!ELEMENT foreach (#PCDATA | include | trim | where | set | foreach | choose | if | bind)*>
    <!ATTLIST foreach
    collection CDATA #REQUIRED
    item CDATA #IMPLIED
    index CDATA #IMPLIED
    open CDATA #IMPLIED
    close CDATA #IMPLIED
    separator CDATA #IMPLIED
    >

इसके अलावा, वस्तुओं की सूचियों को नीचे दिए गए अनुसार foreach में पहुँचा जा सकता है। आप इसे आमतौर पर INSERT/UPDATE स्टेटमेंट के लिए इस्तेमाल करेंगे:

नमूना बीन :

public class StripperBean {

    public StripperBean(int stripperID, String stripperName, String realName) {
        this.stripperID = stripperID;
        this.stripperName = stripperName;
        this.realName = realName;
    }

    private int stripperID; 
    private String stripperName;
    private String realName;        

    public int getStripperID() {
        return stripperID;
    }
    public void setStripperID(int stripperID) {
        this.stripperID = stripperID;
    }
    public String getStripperName() {
        return stripperName;
    }
    public void setStripperName(String stripperName) {
        this.stripperName = stripperName;
    }
    public String getRealName() {
        return realName;
    }
    public void setRealName(String realName) {
        this.realName = realName;
    }       
}

आपके कार्यान्वयन में:

    Map<String, Object> input = new HashMap<>();
    input.put("club", club);
    List<StripperBean> strippers = new ArrayList<>();
    strippers.add(new StripperBean(1,"Ashley", "Jean Grey"));
    strippers.add(new StripperBean(2,"Candice","Diana Prince"));
    strippers.add(new StripperBean(3,"Cristal","Lara Croft"));        
    input.put("strippers", strippers);
    return stripClubMapper.saveStripperDetails(input);

मैपर xml में :

    <insert id="saveStripperDetails">
        INSERT INTO EXOTIC_DANCERS (STRIPPER_ID, STAGE_NAME, REAL_NAME)
        VALUES
        <foreach item="stripper" collection="input" separator=",">
            (#{stripper.stripperID},
            #{stripper.stripperName},
            #{stripper.realName})
        </foreach>
    </select>

अच्छा सवाल बीटीडब्ल्यू :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. लारवेल विज़िटर काउंटर

  2. MySQL डीबी के साथ रेल में सर्वर प्रारंभ करने में असमर्थ

  3. तालिका अपडेट होने पर MySQL ट्रिगर से ईमेल भेजें

  4. उपयोगकर्ता को दिखाने के बजाय कोडनिर्देशक क्वेरी त्रुटियों की जाँच करें

  5. जहां ip=inet_pton($ip) का चयन नहीं किया जा सकता