2016-04-01 21 views
6

Kullandığım sıralamamın adını değiştirmek istiyorum. O iki seçenekleri denedik ve başarısız oldu:PostgreSQL'te sıra adını değiştirme

ALTER TABLE PLAYER RENAME id_seq_player TO player_id_seq; 

ve

ALTER SEQUENCE id_seq_player RENAME TO player_id_seq; 

Ben resmi belgelerine baktım ve oradan ben bu iki SQL yarattı, ancak bunların hiçbiri çalıştı. first solution bir SQL hatasıyla sonuçlandı ve second bir zaman aşımına sahipti. İşte

alıyorum SQL hatadır:

ERROR: column "id_seq_player" does not exist 

********** Error ********** 

* İkinci SQL deyimi iş yaptı gibi GÜNCELLEME *

görünüyor. Bağlantı noktasını iletmem gerektiğinden, belki de bağlantı veya OpenShift ile ilgili bir sorun vardı. Ama şimdi doğrulamak için birkaç kez denedim ve işe yarıyor.

ALTER SEQUENCE id_seq_player RENAME TO player_id_seq; /* Works */ 
+0

o diziyi sizde var mı? – Mihai

+0

Yaparım. Sadece bir kullanıcı kullanıyorum ve bu kullanıcı tüm tabloları karşılık gelen sıralarla oluşturdu. Ama tuhaf bir şey varsa, günlüklerimi kontrol edeceğim. –

cevap

9
ALTER SEQUENCE id_seq_player RENAME TO player_id_seq; 

doğrudur. Doğru olanı değiştirdiğinizden emin olmak için şema adını da eklemek isteyebilirsiniz, ancak bu büyük olasılıkla çalışmalıdır.

Zaman aşımına uğrarsa, sıranızı kilitleyen başka bir işleminiz olabilir. Diğer tüm veritabanı kullanıcılarını kapatmanın bir yolu var mı, yoksa bunu yapmak çok mu önemli?

0

Dont komut satırını biliyorum ama pgAdmin

benim dizisine

Sadece eklemek 1 değiştirmek ve geri değiştirebilir.

enter image description here

+0

SQL deyimini istiyorum çünkü onları yeniden adlandırmak istediğim birkaç dizim var. Ve bunu her biri için el ile yapmak istemiyorum. Sadece pgAdmin kullanıyorum, çünkü Openshift'i kullandığımdan beri veritabanına bağlanabilmemin tek yolu budur. Ama teşekkürler, bunu aklımda tutacağım. –

+0

Ve yönlendirdiğiniz SQL temel olarak yeniden adlandırılmaz, ancak yeni bir tane oluşturur. Kullandığı SQL'i sevmiyorum. Kullanabileceğim bir yeniden adlandır SQL deyimi olduğunu biliyorum. –

+0

Hayır. PgAdmin size gösterimi gösterir, Ama size özellikleri sağ tıklayıp adını değiştirdiğim sol tarafı gösteririm. –

2

bu deneyin:

ALTER TABLE id_seq_player RENAME TO player_id_seq;