ਪ੍ਰਾਇਮਰੀ ਕੁੰਜੀ ਸੰਧੀ 'ਤੇ ਵਿਲੱਖਣ ਪਾਬੰਦੀਆਂ ਵਰਤਣ ਦੇ ਫਾਇਦੇ
ਇੱਕ UNIQUE constraint ਬਣਾ ਕੇ, SQL ਸਰਵਰ ਪ੍ਰਬੰਧਕ ਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹਨ ਕਿ ਇੱਕ ਕਾਲਮ ਵਿੱਚ ਡੁਪਲੀਕੇਟ ਮੁੱਲ ਨਹੀਂ ਹੋ ਸਕਦੇ ਹਨ. ਜਦੋਂ ਤੁਸੀਂ ਨਵੀਂ UNIQUE constraint ਬਣਾਉਂਦੇ ਹੋ, SQL ਸਰਵਰ ਇਹ ਪਤਾ ਕਰਨ ਲਈ ਕਾਲਮ ਦੀ ਜਾਂਚ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਇਹ ਕੋਈ ਡੁਪਲੀਕੇਟ ਮੁੱਲ ਰੱਖਦਾ ਹੈ. ਜੇ ਸਾਰਣੀ ਵਿੱਚ ਪਹਿਲਾਂ-ਮੌਜੂਦ ਡੁਪਲੀਕੇਟ ਹਨ, ਤਾਂ ਪਾਬੰਦੀ ਬਣਾਉਣ ਵਾਲਾ ਕਮਾਂਡ ਅਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ. ਇਸੇ ਤਰ੍ਹਾਂ, ਇੱਕ ਵਾਰ ਜਦੋਂ ਤੁਹਾਡੇ ਕੋਲ ਕਾਲਮ ਤੇ ਇੱਕ ਵਿਲੱਖਣ ਰੁਕਾਵਟ ਹੈ, ਜੋ ਡੇਟਾ ਨੂੰ ਜੋੜਨ ਜਾਂ ਸੋਧਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ ਜਿਸ ਨਾਲ ਡੁਪਲੀਕੇਟ ਹੋਣ ਦਾ ਕਾਰਨ ਬਣਦਾ ਹੈ ਤਾਂ ਇਹ ਫੇਲ ਹੋ ਜਾਂਦੀ ਹੈ.
ਵਿਲੱਖਣ ਪਾਬੰਦੀਆਂ ਕਿਉਂ ਵਰਤੋ?
ਇੱਕ ਵਿਲੱਖਣ ਰੁਕਾਵਟ ਅਤੇ ਪ੍ਰਾਇਮਰੀ ਕੁੰਜੀ ਦੋਵਾਂ ਨੇ ਵਿਲੱਖਣਤਾ ਨੂੰ ਮਜਬੂਰ ਕੀਤਾ ਹੈ, ਪਰ ਅਜਿਹੇ ਕਈ ਵਾਰ ਹਨ ਕਿ ਇੱਕ ਵਿਲੱਖਣ ਰੁਕਾਵਟ ਇੱਕ ਬਿਹਤਰ ਵਿਕਲਪ ਹੈ.
- ਜਦੋਂ ਤੁਸੀਂ ਇੱਕ ਸਾਰਣੀ ਵਿੱਚ ਬਹੁਤ ਸਾਰੀਆਂ ਸੀਮਾਵਾਂ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇੱਕ ਵਿਪਰੀਤ ਅਵਿਸ਼ਟਤਾ ਵਰਤੋ. ਤੁਸੀਂ ਕੇਵਲ ਇੱਕ ਪ੍ਰਾਇਮਰੀ ਕੁੰਜੀ ਨੂੰ ਇੱਕ ਸਾਰਣੀ ਨਾਲ ਜੋੜ ਸਕਦੇ ਹੋ
- ਇੱਕ ਵਿਲੱਖਣ ਰੁਕਾਵਟੀ ਵਰਤੋ ਜਦੋਂ ਇੱਕ ਕਾਲਮ ਬੇਕਾਰ ਮੁੱਲ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ. ਪ੍ਰਾਇਮਰੀ ਕੁੰਜੀ ਦੀਆਂ ਪਾਬੰਦੀਆਂ ਨੂੰ ਸਿਰਫ ਕਾਲਮ ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਕਿ ਬੇਅਰ ਮੁੱਲਾਂ ਦੀ ਅਨੁਮਤੀ ਨਹੀਂ ਦਿੰਦੇ ਹਨ.
ਇੱਕ ਵਿਲੱਖਣ ਪਾੜਾ ਬਣਾਉਣਾ
ਬਹੁਤ ਸਾਰੇ ਤਰੀਕੇ ਹਨ ਕਿ ਤੁਸੀਂ SQL ਸਰਵਰ ਵਿੱਚ ਇੱਕ ਵਿਲੱਖਣ ਪਾਬੰਦੀ ਬਣਾ ਸਕਦੇ ਹੋ. ਜੇਕਰ ਤੁਸੀਂ ਮੌਜੂਦਾ ਟੇਬਲ ਤੇ ਇੱਕ ਵਿਲੱਖਣ ਪਾਬੰਦੀ ਨੂੰ ਜੋੜਨ ਲਈ Transact-SQL ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਸਤਰ ਦੇ ਰੂਪ ਵਿੱਚ ALTER ਸਾਰਨੀ ਸਟੇਟਮੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ:
ਬਦਲਵਾਂ ਸਾਰਣੀ ਸ਼ਾਮਿਲ ਕਰੋ ਅਨਿਸ਼ਚਿਤ ()ਜੇ ਤੁਸੀਂ GUI ਸਾਧਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ SQL ਸਰਵਰ ਨਾਲ ਗੱਲਬਾਤ ਕਰਨਾ ਪਸੰਦ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ SQL ਸਰਵਰ ਮੈਨੇਜਮੈਂਟ ਸਟੂਡਿਓ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਵਿਲੱਖਣ ਪਾਬੰਦੀ ਵੀ ਬਣਾ ਸਕਦੇ ਹੋ. ਇਹ ਕਿਵੇਂ ਹੈ:
- ਓਪਨ SQL ਸਰਵਰ ਮੈਨੇਜਮੈਂਟ ਸਟੂਡੀਓ
- ਡਾਟਾਬੇਸ ਦੇ ਟੇਬਲ ਫੋਲਡਰ ਨੂੰ ਫੈਲਾਓ ਜਿੱਥੇ ਤੁਸੀਂ ਪਾਬੰਦੀ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ.
- ਉਹ ਸਾਰਣੀ ਤੇ ਸੱਜਾ ਕਲਿੱਕ ਕਰੋ ਜਿੱਥੇ ਤੁਸੀਂ ਪਾਬੰਦੀ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹੋ ਅਤੇ ਡਿਜ਼ਾਇਨ ਤੇ ਕਲਿਕ ਕਰੋ.
- ਟੇਬਲ ਡਿਜ਼ਾਈਨਰ ਮੀਨੂ ਵਿੱਚ, ਸੂਚੀ-ਪੱਤਰ / ਕੀਜ਼ ਤੇ ਕਲਿੱਕ ਕਰੋ.
- ਸੂਚੀ-ਪੱਤਰ / ਕੀਜ਼ ਡਾਇਲਾਗ ਬਾਕਸ ਵਿੱਚ, ਸ਼ਾਮਲ ਨੂੰ ਦਬਾਉ.
- ਟਾਈਪ ਡ੍ਰੌਪ ਡਾਉਨ ਲਿਸਟ ਵਿੱਚ ਯੂਨੀਕ ਕੁੰਜੀ ਚੁਣੋ.
ਵਿਲੱਖਣ ਪਾਬੰਦੀਆਂ ਵਿ. ਅਨੁਕੂਲ ਇੰਡੈਕਸ
ਵਿਲੱਖਣ ਰੁਕਾਵਟ ਅਤੇ ਇੱਕ ਵਿਲੱਖਣ ਸੂਚਕਾਂਕ ਵਿਚਕਾਰ ਫਰਕ ਦਾ ਕੁਝ ਉਲਝਣ ਹੋ ਰਿਹਾ ਹੈ. ਹਾਲਾਂਕਿ ਤੁਸੀਂ ਉਹਨਾਂ ਨੂੰ ਬਣਾਉਣ ਲਈ ਵੱਖ-ਵੱਖ Transact-SQL ਕਮਾਂਡਜ਼ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ (ਬਦਲਵੇਂ ਸਾਰਣੀ ... ਪਾਬੰਦੀਆਂ ਲਈ ADD ਕੰਟ੍ਰੋਲ ਅਤੇ ਇੰਡੈਕਸੇਸ ਲਈ ਵਿਲੱਖਣ INDEX ਤਿਆਰ ਕਰੋ), ਉਹਨਾਂ ਦਾ ਬਹੁਤ ਪ੍ਰਭਾਵ ਹੈ, ਜਿਆਦਾਤਰ ਹਿੱਸੇ ਲਈ. ਵਾਸਤਵ ਵਿੱਚ, ਜਦੋਂ ਤੁਸੀਂ ਇੱਕ ਵਿਲੱਖਣ ਪਾਬੰਦੀ ਬਣਾਉਂਦੇ ਹੋ, ਇਹ ਅਸਲ ਵਿੱਚ ਸਾਰਣੀ ਵਿੱਚ ਇੱਕ ਵਿਲੱਖਣ ਸੂਚਕਾਂਕ ਤਿਆਰ ਕਰਦਾ ਹੈ. ਇਹ ਨੋਟ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ, ਹਾਲਾਂਕਿ, ਕਈ ਅੰਤਰ ਹਨ:
- ਜਦੋਂ ਤੁਸੀਂ ਕੋਈ ਇੰਡੈਕਸ ਬਣਾਉਂਦੇ ਹੋ, ਤੁਸੀਂ ਸ੍ਰਿਸ਼ਟੀ ਦੇ ਆਦੇਸ਼ ਵਿੱਚ ਹੋਰ ਵਿਕਲਪ ਜੋੜ ਸਕਦੇ ਹੋ.
- ਇੱਕ ਵਿਲੱਖਣ ਕੁੰਜੀ ਦੇ ਤੌਰ ਤੇ ਵਰਤੀ ਜਾ ਸਕਦੀ ਇੱਕ ਕਾਲਮ ਵਿਸ਼ਾ ਇੱਕ ਵਿਦੇਸ਼ੀ ਕੁੰਜੀ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.