SORU
17 Aralık 2011, CUMARTESİ


Nasıl eğer isim bir kullanıcı olup olmadığını kontrol etmek için?

createuser PostgreSQL kullanıcı (ROL) oluşturulmasını sağlar. Eğer bu kullanıcı ismi zaten var olmadığını kontrol etmek için basit bir yolu var mı? Aksi halde bir hata ile createuser verir:

createuser: creation of new role failed: ERROR:  role "USR_NAME" already exists

GÜNCELLEME: çözümü daha kolay bir komut dosyası içinde otomatikleştirme böylece kabuk tercihen yürütülebilir olmalıdır.

CEVAP
17 Aralık 2011, CUMARTESİ


SELECT 1 FROM pg_roles WHERE rolname='USR_NAME'

Ve komut satırı açısından (Erwin için teşekkürler):

psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='USR_NAME'"

Verimleri 1 bulundu ve başka bir şey.

Yani:

psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='USR_NAME'" | grep -q 1 || createuser ...

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 3biblecom

    3biblecom

    23 NİSAN 2011
  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • JamesAtiPhone

    JamesAtiPhon

    16 EYLÜL 2010