sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor kan jeg ikke bruge en variabel som tabelnavn i en lagret procedure?

Du skal bruge dynamisk sql. ja, åh.

SET @s = CONCAT('UPDATE ', _tablename, ' SET ', _columnname, ' = NULL WHERE LENGTH(TRIM(', _columnname, ')) = 0' );
PREPARE stmt FROM @s;
EXECUTE stmt;


  1. Doctrine 2 mysql FIELD funktion i rækkefølge efter

  2. Hvordan skal unix-tidsstempler gemmes i int-kolonner?

  3. MySQL:returner opdaterede rækker

  4. Konverter afgrænset streng til rækker i oracle