The sqlin allows recording data into a datasource in a very compact way, from a Web form. Fast application of this syntax requires complying some few constraints:
- Data to be stroed into the datastore MUST exist in the CGI parameter string (i.e. they should have been sent by a previous CGI form activation).
- The CGI value set should be explicitely dissociable from other variables using a conventional prefix for its keys.
- The CGI variables, once the prefix removed, MUST be exactly assignable to exsting fields within the target table.
- The target table SHOULD have an auto-iterative primary key OR the priary key value must be part of the CGI incoming data set.
source: A valid datasource that would have be previously defined by a <%sqlsource statement. If no source is given, a default connection is made to the SQL::LAST_DEFINED_SOURCE.
filter: This attributes defines the explicit prefix used to distinguish between the data that will be routed to the table and other CGI data (using a DIML scoping prefix is largely encouraged. The prefix is the left part of the CGI name, just before the SQL column name. Note that the SQL column name must math the database DESC definition).
tohtml: If this switch is set, end of lines within a textual datum will be replaced by <BR> elements.
quote: This allows defining the escaping sequence for single quotes in the target database (e.g. : "\'" for a MySQL datastore).
query: A mandatory attribute that defines the request header. Essentially :
- INSERT INTO tablename
- REPLACE INTO tablename
crypt: Defines the fields for which database local encryption function must be used.
Both syntaxes may be mixed if desired.