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

Oracle पिछली बार डाली गई पहचान को पुनः प्राप्त करें

कुंआ। Oracle 12c में पहचान कार्यक्षमता के लिए अनुक्रमों और डिफ़ॉल्ट मानों का उपयोग करता है। इसलिए आपको अपने प्रश्न के अनुक्रमों के बारे में जानना होगा।

पहले एक परीक्षण पहचान तालिका बनाएं।

CREATE TABLE IDENTITY_TEST_TABLE
(
  ID NUMBER GENERATED ALWAYS AS IDENTITY 
, NAME VARCHAR2(30 BYTE) 
);

सबसे पहले, अपने अनुक्रम नाम को खोजें जो इस पहचान कॉलम के साथ बनाया गया है। यह क्रम नाम आपकी तालिका में एक डिफ़ॉल्ट मान है।

Select TABLE_NAME, COLUMN_NAME, DATA_DEFAULT from USER_TAB_COLUMNS
where TABLE_NAME = 'IDENTITY_TEST_TABLE';

मेरे लिए यह मान "ISEQ$$_193606"

. है

कुछ मान डालें।

INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('aydın');

फिर मूल्य डालें और पहचान खोजें।

INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
 SELECT "ISEQ$$_193606".currval from dual; 

आपको अपना पहचान मूल्य देखना चाहिए। यदि आप एक ब्लॉक में करना चाहते हैं तो

. का उपयोग करें
declare
   s2 number;
 begin
   INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla') returning ID into s2;
   dbms_output.put_line(s2);
 end;

अंतिम आईडी मेरा पहचान कॉलम नाम है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLException:jdbc के लिए कोई उपयुक्त ड्राइवर नहीं मिला:oracle:पतला:@// localhost:1521/orcl

  2. Oracle में दो टाइमस्टैम्प के बीच अंतर की गणना कैसे करें

  3. पीएल/एसक्यूएल में एक चर के प्रकार को कैसे देखें?

  4. ईएम एसक्यूएल मॉनिटर प्रभाव

  5. ऑरैकल में टेबल कैसे बनाएं?