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

Postgresql कॉलम प्रकार को int से UUID में बदलें

आप यूयूआईडी में सिर्फ एक int4 नहीं डाल सकते हैं; यह एक अमान्य यूआईडी होगा, जिसमें केवल 32 बिट सेट होंगे, उच्च 96 बिट शून्य होंगे।

यदि आप पूर्णांकों को पूरी तरह से बदलने के लिए नए यूयूआईडी उत्पन्न करना चाहते हैं, और यदि उन पूर्णांकों के लिए कोई मौजूदा विदेशी कुंजी संदर्भ नहीं हैं, तो आप एक नकली कास्ट का उपयोग कर सकते हैं जो वास्तव में नए मान उत्पन्न करता है।

इसे न चलाएं आपके डेटा के बैकअप के बिना। यह colA . में पुराने मानों को स्थायी रूप से फेंक देता है ।

ALTER TABLE tableA ALTER COLUMN colA SET DATA TYPE UUID USING (uuid_generate_v4());

आमतौर पर जोड़ने . के लिए एक बेहतर तरीका है एक uuid कॉलम, फिर उसे इंगित करने के लिए किसी भी विदेशी कुंजी संदर्भ को ठीक करें, और अंत में मूल कॉलम को छोड़ दें।

आपको यूयूआईडी मॉड्यूल स्थापित करने की आवश्यकता है:

CREATE EXTENSION "uuid-ossp";

उद्धरण महत्वपूर्ण हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. जेनकिंस का उपयोग करके PostgreSQL दैनिक कार्यों को स्वचालित करना

  2. PostgreSQL में एकाधिक कॉलम कैसे अपडेट करें

  3. psql - कमांड के परिणामों को एक फाइल में सेव करें

  4. Postgresql - DB से कुछ ऑटो कनेक्शन के कारण डेटाबेस को छोड़ने में असमर्थ

  5. यूनिक्स युग को टाइमस्टैम्प में कैसे बदलें