sql >> Databasteknik >  >> RDS >> Mysql

Dynamisk MySQL med lokala variabler

Tyvärr, förberedda uttalanden i MySQL är sessionsglobala. Enligt http://dev.mysql .com/doc/refman/5.1/en/sql-syntax-prepared-statements.html , "Ett förberett uttalande är också globalt för sessionen."

Och det finns inget annat sätt (förutom förberedda satser) att köra dynamisk SQL i MySQL 5.x.

Så du kan givetvis ersätta "@s" ovan, men AFAIK har du fastnat med @SelectedId.

I MySQL 6.x finns en funktion planerad som kommer att lägga till en "EXECUTE IMMEDIATE"-sats som kommer att exekvera dynamisk SQL. Se http://forge.mysql.com/worklog/task.php? id=2793 .




  1. MySQL/Python -> Fel syntax för platshållare i uttalanden?

  2. Snabbaste sättet att uppdatera en MySQL-tabell om rad finns annars infoga. Mer än 2 icke-unika nycklar

  3. JSON_VALUE() Exempel i SQL Server (T-SQL)

  4. Skicka parametrar till MySQL-skript