अगर आपके पास UNIQUE
है स्तंभ पर अनुक्रमणिका, चाहे आपने कुछ भी प्रयास किया हो, RDMS नहीं होगा उस कॉलम में डुप्लीकेट की अनुमति दें (NULL
. को छोड़कर) मूल्य)।
जैसा कि आपने कहा, "त्रुटि" को रोकने के लिए समाधान है यदि यह संलग्न है। शायद INSERT IGNORE
आपके मामले में।
वैसे भी, INSERT
और UPDATE
डेटाबेस को संशोधित करें। MySQL कभी नहीं इन कथनों के लिए मान लौटाएँ। अपने DB को पढ़ने का एकमात्र तरीका SELECT
. का उपयोग करना है बयान।
यहां "समाधान" सरल है, क्योंकि आपके पास एक UNIQUE
है कॉलम:
INSERT IGNORE INTO tbl (pk, sha_key) VALUES ( ... ), ( ... );
SELECT pk, sha_key FROM tbl WHERE sha_key IN ( ... );
-- ^^^
-- Here the list of the sha1 keys you *tried* to insert