SQL'de, bir tabloyu güncelleştirme, her satır için bir sütunu farklı bir değere ayarlama?PostgreSQL dizisi kullanarak SQL'deki benzersiz değerler nasıl güncellenir?
PostgreSQL veritabanındaki bazı satırları güncellemek istiyorum, bir sütunu bir sıradan bir sayıya ayarlayarak, bu sütunun benzersiz bir kısıtlaması vardır. Ben sadece kullanabilirsiniz ümit:
update person set unique_number = (select nextval('number_sequence'));
ama nextval yalnızca bir kez denir, bu yüzden güncelleme her satır için aynı numarayı kullanır gibi görünüyor, çünkü 'yinelenen anahtar benzersiz kısıtlamayı ihlal' olsun hata . Bunun yerine ne yapmalıyım?
Teşekkürler - bu işe yarıyor. Alt seçim tarafından yakalandım çünkü iki sütun için aynı sıra numarasını kullanmaya çalışıyordum, ama gerçekten bunu yapmaya ihtiyacım yok. –
Eğer nextval ('dizi') çağırdıktan sonra aynı dizi değerini tekrar kullanmak isterseniz, geçerli diziyi döndüren ilgili işlev akımını ('sıra') kullanabilirsiniz. – cms