ठीक है, ऐसा करने का यह एक त्वरित'आसान तरीका नहीं होगा, वास्तव में....
मेरा दृष्टिकोण यह होगा:
-
समान संरचना वाली एक नई तालिका बनाएं -
ID
. को छोड़कर कॉलमBIGINT IDENTITY
. हैINT IDENTITY
. के बजाय---- [ यहां अपने सर्वर को अनन्य एकल-उपयोगकर्ता मोड में रखें; उपयोगकर्ता इस बिंदु से ]----
. को आपके सर्वर का उपयोग नहीं कर सकता -
अपनी तालिका को संदर्भित करने वाली सभी विदेशी कुंजी बाधाओं को ढूंढें और अक्षम करें
-
SET IDENTITY_INSERT (your new table) ON
-
अपनी पुरानी तालिका से पंक्तियों को नई तालिका में डालें
-
SET IDENTITY_INSERT (your new table) OFF
-
अपनी पुरानी तालिका हटाएं
-
अपनी नई तालिका का नाम बदलकर पुराने तालिका नाम कर दें
-
BIGINT
. का उपयोग करने के लिए आपकी तालिका के लिए FK संदर्भ वाली सभी तालिका को अपडेट करेंINT
. के बजाय (यह एक साधारणALTER TABLE ..... ALTER COLUMN FKID BIGINT
के साथ करने योग्य होना चाहिए। ) -
सभी विदेशी कुंजी संबंध फिर से बनाएं
-
अब आप अपने सर्वर को फिर से सामान्य बहु-उपयोगकर्ता उपयोग पर वापस कर सकते हैं