On 4 Mar 2013, at 16:36, Mehdi Ravanbakhsh <[email protected]> wrote:
> I need to transfer one radacc Table record to another table (backup radacc)
> , Transfer means insert in new table and Dell from first one and this is
> happen every time each user get [ Acct-Status-Type == 'Stop ] .
>
> i use perl script to do some calculate and return 3 replay attribute and
> change 3 check attribute in radcheck table and Unlang just work to execute
> perl script .
Ok.
>
> so in this case i need to use Perl in general but i can use unlang and Perl
> to connect and update database by SQL query i need to know that which one
> is faster and which way has more performance :
>
> Perl Directly connecting to PostgreSQL database
Perl as you can select all the values in one query, or the fastest would be to
create a stored procedure and call it with unlang, but i'm not that familiar
with PgSQL procedures so I can't tell you how to do that.
>
> OR
>
> Use Unlang to connect to database by freeradius PGSQL database back-end.
>
>
> and in final i am not understand meaning of " Likely unlang if you only
> want to retrieve one value." it means that is limitation SQL query in
> UnLang ?
Yes. Unlang/XLAT queries will only assign the value of the first column.
update request {
Tmp-String-0 = "%{sql:SELECT `a`, `b` FROM `foo` WHERE `bar` = 1;}"
}
Tmp-String-0 will only hold the value of column a.
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html