SORU
28 EKİM 2008, Salı


Nasıl sıfırlamak için PostgreSQL' senkronize düştüğünde birincil anahtar dizisi?

Birincil anahtar tablo sırası benim satır ile senkronize olmadığı sorunu ile karşılaştım.

Bu, yeni bir satır eklediğinizde sıra Seri Veri türü örtülü zaten var olan bir sayı olduğundan, yinelenen anahtar hata alıyorum.

İthalat/yükler sırası düzgün değil sürdürerek neden olacak gibi görünüyor.

CEVAP
28 EKİM 2008, Salı


-- Login to psql and run the following
-- What is the result?
SELECT MAX(id) FROM your_table;

-- Then run...
-- This should be higher than the last result.
SELECT nextval('your_table_id_seq');

-- If it's not higher... run this set the sequence last to your highest pid it. 
-- (wise to run a quick pg_dump first...)
SELECT setval('your_table_id_seq', (SELECT MAX(id) FROM your_table));
-- if your tables might have no rows
-- false means the set value will be returned by the next nextval() call    
SELECT setval('your_table_id_seq', COALESCE((SELECT MAX(id) 1 FROM your_table), 1), false);

Source - Ruby Forum

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • michal lelkowski

    michal lelko

    9 Temmuz 2006
  • My Name Is Jeff

    My Name Is J

    26 ŞUBAT 2008
  • TheXiaxue

    TheXiaxue

    3 AĞUSTOS 2009