SYNOPSIS#include "tstone.h"
int n_dotsql(ts,stmt,...)
TSQL *ts;
char *stmt;
DESCRIPTIONn_dotsql() combines the functionality of n_settsql() and
n_exectsql() into one call. It takes the statement format string
as in n_settsql() followed by input variable pointers as in
n_exectsql(). Any resultant rows are discarded.
It returns the number of rows that were processed on success or
-1 on error.
This function is useful for performing one shot statements that don't generate any output or you don't care about the output. Like creating or dropping a table or inserting a single record.
EXAMPLE/*
This example creates a table called docs with the following fields:
Name Type Description
---- ---- -----------
id counter a handy unique key field
text varchar the text ocr'd off the image
thumb varbyte a thumbnail of the original image
image indirect the full size image
Then it inserts one row into it.
*/
SERVER *se;
TSQL *ts;
char *text;
byte *thumbnail;
size_t nthumbnail;
char *imagefile;
int nrows;
...
if(n_dotsql(ts,"create table docs(id counter,text varchar(1000),
thumbnail varbyte,imagefile indirect);")>=0)
{
...
nrows=n_dotsql(ts,
"insert into docs values (counter, %s, %p%n, %<);",
text,thumbnail,nthumbnail,imagefile);
}
...
SEE ALSOn_settsql(), n_exectsql()