Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como passar variável no mysql_query


Estendendo a resposta do @ckruse, você deve ter o cuidado de usar mysql_real_escape_string() se sua string vem de fontes arbitrárias.
int insert_data(MYSQL * mysql, char * str, int len)
{
    if (len < 0) {
        len = strlen(str);
    }

    char esc[2*len+1];
    unsigned long esclen = mysql_real_escape_string(mysql, esc, str, len);

    char statement[512];
    snprintf(statement, sizeof statement, "INSERT INTO table VALUES ('%s')", esc);
    return mysql_query(mysql, statement);
}

(Uma alternativa pode ser mysql_hex_string() se tratado corretamente.)