आप प्रयोग करके देख सकते हैं USING
:
वैकल्पिक USING
खंड निर्दिष्ट करता है कि पुराने से नए कॉलम मान की गणना कैसे करें; यदि छोड़ दिया जाता है, तो डिफ़ॉल्ट रूपांतरण पुराने डेटा प्रकार से नए में असाइनमेंट कास्ट के समान है। USING
यदि पुराने से नए प्रकार का कोई निहित या असाइनमेंट नहीं है, तो एक खंड प्रदान किया जाना चाहिए।
तो यह काम कर सकता है (आपके डेटा के आधार पर):
alter table presales alter column code type numeric(10,0) using code::numeric;
-- Or if you prefer standard casting...
alter table presales alter column code type numeric(10,0) using cast(code as numeric);
यह विफल हो जाएगा अगर आपके पास कुछ भी है code
जो संख्यात्मक को नहीं डाला जा सकता है; यदि USING विफल होता है, तो आपको कॉलम प्रकार बदलने से पहले गैर-संख्यात्मक डेटा को हाथ से साफ़ करना होगा।