Questa macro estende la macro standard di WebGUI SQL.pm per permettere l'esecuzione di query SQL su database esterni. Permette anche di eseguire query SQL non di selezione, quali INSERT, DELETE e UPDATE.
E' totalmente compatibile con la sintassi del modulo standard cosi che è possibile scrivere codice tipo questo:
^SQLExt("select count(*) from users","Ci sono ^0; utenti collegati.");
Ma, rispetto allo standard, è possibile scrivere anche questo tipo di codice
^SQLExt("select * from table1","^0;-^1;","external_database","db_username","db_password","remote_host");
Inoltre, se è stato definito qualche databaseLink, è possibile usare questo collegamente in questo modo
^SQLExt("select * from table1","^0;-^1;",1000)
dove 1000 è l'id del databaseLinkId.
La sintassi completa di questa macro è:
^SQLExt($sql_statement,[$format],[$databaseLink])
o
^SQLExt($sql_statement,[$format],$db_name,$db_user,$db_pass,[$db_host])
dove
Per installare questa macro, copiare il file SQLExt-xx.yy.zz.pm in lib/WebGUI/Macro/SQLExt.pm. Aprire poi il file WebGUI.conf e aggiungere la riga
SQLExt => SQLExt
alla fine della sezione macro. Se, per esempio, l'ultima riga di questa sezione risulta essere:
u => u_companyUrl
sostituirla con
u => u_companyUrl,
\
SQLExt => SQLExt