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

PostreSQL में INSERT और लेनदेन क्रमांकन

आम तौर पर, नहीं। दूसरा लेन-देन केवल सम्मिलित कर रहा है, इसलिए जब तक कोई अद्वितीय अनुक्रमणिका जांच या अन्य ट्रिगर नहीं होता है, तब तक डेटा बिना शर्त डाला जा सकता है। एक अद्वितीय अनुक्रमणिका (प्राथमिक कुंजी सहित) के मामले में, यदि दोनों लेन-देन समान मान के साथ पंक्तियों को अद्यतन कर रहे हैं, तो यह अवरुद्ध हो जाएगा, जैसे:

-- Session 1                           -- Session 2
CREATE TABLE t (x INT PRIMARY KEY);
BEGIN;
INSERT INTO t VALUES (1);
                                       BEGIN;
                                       INSERT INTO t VALUES (1);  -- blocks here
COMMIT;
                                       -- finally completes with duplicate key error

अपडेट के मामले में चीजें कम स्पष्ट होती हैं जो अन्य लेनदेन द्वारा सम्मिलन को प्रभावित कर सकती हैं। मैं समझता हूं कि PostgreSQL इस मामले में अभी तक "सत्य" क्रमिकता का समर्थन नहीं करता है। मुझे नहीं पता कि यह अन्य SQL सिस्टम द्वारा कितना सामान्य रूप से समर्थित है।

देखें http://www.postgresql.org/docs/current/interactive/ mvcc.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं Postgres में दो क्षेत्रों का MIN () कैसे प्राप्त करूं?

  2. PostgreSQL - स्ट्रिंग को ASCII पूर्णांक में बदलें

  3. कुल समूह के साथ विंडोज़ फ़ंक्शन को पोस्टग्रेज करता है

  4. PostgreSQL में समय क्षेत्र के साथ/बिना टाइमस्टैम्प के बीच अंतर

  5. DecimalField शून्य को 0E-10 . में कनवर्ट करता है