pgSQL - aktualizacja has

Potrzebujesz pomocy z C, C++, perl, python, itp.
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2344
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Kod: Zaznacz cały

ERROR:  syntax error at or near "user"
LINE 1: ...ON update_password (oldpass text, cryptpass text, user text)...
                                                             ^
Dodane:
Czy ma ktoś jeszcze jakieś pomysły?
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Spróbuj zatem zrobić z tego "user" np.: "puser" (może niechybnie coś źle rozumie) i idąc za Bastianem byłoby to tak:

Kod: Zaznacz cały

CREATE FUNCTION update_password (oldpass text, cryptpass text, puser text) RETURNS text AS ' 
        BEGIN             
            DECLARE currentsalt varchar(20); 
            DECLARE error text;
            SET error = 'incorrect current password'; 
            SELECT substring_index(substr(puser.password,4),_latin1'$',1) INTO currentsalt FROM users WHERE username=puser;
            SELECT '' INTO error FROM users WHERE username=puser AND password=ENCRYPT(oldpass,currentsalt);
            UPDATE users SET password=cryptpass WHERE username=puser AND password=ENCRYPT(oldpass,currentsalt);
            RETURN error;
        END; '  language 'SQL';
PS. Usunąłeś wcześniej starą deklarację owej funkcji?
ODPOWIEDZ