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

गैर-कुंजी-संरक्षित त्रुटि प्राप्त किए बिना एक जॉइन व्यू को अपडेट करना

आप column_from_table2 को अपडेट नहीं कर सकते हैं इस दृष्टि से, यह अद्यतन करने योग्य नहीं है।
यह जांचने के लिए कि कोई स्तंभ अद्यतन करने योग्य है या नहीं, यह क्वेरी चलाएँ:

SELECT * FROM USER_UPDATABLE_COLUMNS
WHERE table_name = 'MY_DATAVIEW';

OWNER                          TABLE_NAME                     COLUMN_NAME                    UPDATABLE INSERTABLE DELETABLE
------------------------------ ------------------------------ ------------------------------ --------- ---------- ---------
TEST                           MY_DATAVIEW                    KEY1                           YES       YES        YES       
TEST                           MY_DATAVIEW                    KEY2                           YES       YES        YES       
TEST                           MY_DATAVIEW                    COLUMN_FROM_TABLE1             YES       YES        YES       
TEST                           MY_DATAVIEW                    COLUMN_FROM_TABLE2             NO        NO         NO   

यह अद्यतन करने योग्य क्यों नहीं है? यह एक बड़ा सवाल है।
इस विषय पर दस्तावेज़ीकरण में एक पूरा अध्याय है:
http://docs.oracle.com/cd/B28359_01/server.111/b28310/views001.htm#i1006234
ढूंढें "अपडेटिंग व्यूज जिसमें आउटर जॉइन शामिल है", बाहरी जॉइन और विस्तृत विवरण के साथ एक व्यू का एक उदाहरण है, इस व्यू में कौन से कॉलम अपडेट किए जा सकते हैं और क्यों नहीं।



  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. सरल Oracle चर SQL असाइनमेंट

  3. जेडीबीसी में बाध्य चर निष्पादन के साथ एसक्यूएल क्वेरी

  4. जावा में कनेक्शन पूलिंग कैसे करें?

  5. ORA-01422 प्राप्त करने का कारण:सटीक फ़ेच रिटर्न अनुरोधित पंक्तियों की संख्या से अधिक है