Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да предам променлива в mysql_query

Разширявайки отговора на @ckruse, трябва да внимавате да използвате mysql_real_escape_string() ако низът ви идва от произволни източници.

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);
}

(Алтернатива може да бъде mysql_hex_string() ако се третира правилно.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:GROUP_CONCAT с ORDER BY COUNT?

  2. вземете последователни записи в mysql

  3. Как да върнете 0 вместо null, когато използвате COUNT в MySQL

  4. MySQL сравнението на двойни типове е неуспешно

  5. Актуализация на MySQL, пропуснете празните полета с PDO