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

लेनदेन के अंदर डेटाबेस बनाएं

जब आप इसे आजमाते हैं, तो आपको त्रुटि मिलती है:

ERROR:  CREATE DATABASE cannot run inside a transaction block

यह src/backend/access/transam/xact.c . से आता है (मेरे स्रोतों पर लाइन 3023, लेकिन संस्करण के अनुसार भिन्न होता है), PreventTransactionChain(...) में .

वहां की टिप्पणी बताती है कि:

CREATE DATABASE के लिए इसे src/backend/tcop/utility.c . से कहा जाता है standard_ProcessUtility . में T_CreatedbStmt . के मामले में , लेकिन दुर्भाग्य से कोई सूचनात्मक टिप्पणी नहीं है जो कहती है कि क्यों विशेष रूप से CREATE DATABASE लेन-देन में चलना सुरक्षित नहीं है।

सूत्रों को देखते हुए, मैं देख सकता हूं कि एक चीज के लिए यह एक चौकी को मजबूर करता है।

कुल मिलाकर, हालांकि, मुझे ऐसा कुछ भी नहीं दिख रहा है जो वास्तव में चिल्लाता हो "हम इसे लेन-देन नहीं कर सकते"। यह अधिक है "हमने इसे लेन-देन करने के लिए कार्यक्षमता को लागू नहीं किया है"।



  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. PostgreSQL 13 . में यूनिकोड सामान्यीकरण

  3. संग्रहीत कार्यविधि का लॉकिंग और समवर्ती निष्पादन

  4. Postgresql फ़ंक्शन में चर के लिए एक चुनिंदा क्वेरी असाइन करें

  5. Postgresql में बैच सम्मिलित पंक्तियों से सीरियल आईडी प्राप्त करना