Good day! So, I try to INSERT (unlang) data into my sql table; I made in site-enable/default something like this: if ( Service-Type == Framed-User ) { if ( "%{sqlauth: INSERT into MYTAB VALUES ('1','2','3','4')}" ) { ok } } and it does not work.... Tue Jan 27 23:06:32 2009 : Info: expand: INSERT into MYTAB ... Tue Jan 27 23:06:32 2009 : Debug: rlm_sql (sqlauth): Reserving sql socket id: 0 Tue Jan 27 23:06:32 2009 : Error: rlm_sql_oracle: query failed in sql_select_query: ORA-24333: zero iteration count Tue Jan 27 23:06:32 2009 : Error: rlm_sql_oracle: OCI_SERVER_NORMAL well, if I change my INSERT -> SELECT (for example) if ( Service-Type == Framed-User ) { if ( "%{sqlauth: SELECT COUNT from MYTAB}" ) { ok } } this works well.. Tue Jan 27 23:06:57 2009 : Debug: rlm_sql (sqlauth): Reserving sql socket id: 0 Tue Jan 27 23:06:57 2009 : Info: sql_xlat finished ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Tue Jan 27 23:06:57 2009 : Debug: rlm_sql (sqlauth): Released sql socket id: 0 In rlm_sql.c : /* * sql xlat function. Right now only SELECTs are supported. Only * the first element of the SELECT result will be used. */ Oh, I am really very interested in INSERT sql. Please, tell me, Is this right? Can I insert or update any data into my DB? Can I use another way for INSERT sql data when I do not use sql accounting and accounting_start_query/stop_query statement? I need to insert or update sql data when my customers do authorize check. Thank you. Alan DeKok:
Flamur Rogova wrote:
in my authorize section, I have this, ... check_password if(notfound) { # log notfound to sql, the line below gives error... "%{sql: INSERT INTO test.logs SET test.logs.user='%{User-Name}', test.description='user not found' }"
You cannot put strings into the configuration like that.
man unlang says it is possible to obtain results from db, but I need to execute only sql INSERT, is my syntax wrong ?
Yes. Nothing in the documentation says that this will work.
You can do:
if ("%{sql:INSERT ..."") { ok }
Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-- Yours faithfully, Anton Borisov.