mysql_query()
int mysql_query(MYSQL *mysql, const char *query)
Use this function to execute the SQL query given as the
second argument of the function. Only one SQL statement may be given.
For queries containing binary data, use the
mysql_real_query() function instead. This
function will return zero if successful, and a nonzero value if not.
Here is an example:
...
MYSQL *mysql;
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL_FIELD *field;
int i, num_fields;
...
mysql = mysql_init(NULL);
mysql_real_connect(mysql,host,user,password,database,0,NULL,0);
const char *sql_stmnt = "SELECT * FROM workreq";
mysql_query(mysql, sql_stmnt, bytes);
result = mysql_store_result(mysql);
num_fields = mysql_field_count(mysql);
while((row = mysql_fetch_row(result)) != NULL)
{
for(i = 0; i < num_fields; i++)
{ printf("%s, ", row[i]); }
printf("\n");
}
mysql_free_result(result);
mysql_close(mysql);
...Although this example is fairly complete, the lines declaring
the variables containing the connection information are not shown. See
the example for the msyql_real_connect()
function next for those details. The SQL statement in the example is
given through a variable, but it could be given within the function if
enclosed in double quotes. The results of the query are stored in the
result variable by way of the
mysql_store_result() function. Incidentally,
it’s important to free the memory allocated for the results with the
mysql_free_result() function when
finished.