2012-06-20 5 views
5

Ben bir Java İskele uygulamayı çalıştırmak çalışıyorum ve bu hatayı görmeye devam:Postgres eksik pgcrypt yeteneği?

Caused by: 
org.postgresql.util.PSQLException: ERROR: function crypt(character varying, character) does not exist| Hint: No function matches the given name and argument types. You might need to add explicit type casts.| Where: PL/pgSQL function 

kimse ya da nasıl sorunu çözmek için bu tanıyor mu? Pgcrypt’in Postgres 9.1.x’de önceden aldığını sanıyordum?

Şu anda Mac OSX Lion 10.7'yi çalıştırıyorum ve Postgres'i demlemek "demlemek yükleme postgres" kullanarak yükleyin.

+1

pgcrypto' prebundled bile 'eğer,' crypt() 'imza crypt (metin, metin)' dır 'değil' crypt (karakter karakter, değişen) 'daki hata mesajı görüldüğü haliyle (ayı "metin" sözcüğü, "karakter farklılığına" eşdeğerdir). –

cevap

10

Sadece pgcrypto özelliğini etkinleştirmem gerekiyordu; Sadece CLI koştu: mac kullanıcıları için

CREATE EXTENSION pgcrypto;

Ben demlemek bu konuda daha fazla okumanızı tavsiye:

Oldukça 'uzantıları' den 'uzantı' var

brew info postgres

+0

Bu uzantıyı etkinleştirdiğiniz için teşekkür ederiz. Ben otomatik olarak uuid oluşturmak için, 9.5.3 postgres kontrol ediyordum. Https://www.postgresql.org/docs/9.5/static/uuid-ossp.html dosyasını buldum ve 'gen_random_uuid();' kullanmayı önerdi. işlevi. Bu uzantıyı etkinleştirdim ve çalışıyor! 'development-db # SELECT gen_random_uuid(); gen_random_uuid -------------------------------------- 40a3e789-a685-4585-abbc- a0a4829402b7 (1 satır) ' – Abhi

0

. Bir karakter düzenlemesi yapamadığım için yeni bir cevap göndermem gerekiyordu.

CREATE EXTENSION pgcrypto; 
+0

Bir yorum şu sırayla yapılmış olurdu. Bu cevabı şimdi silebilirsiniz, ipucu için teşekkürler. –