MySQL预处理语句prepare\execute\deallocate

在SQL语句中使用变量

  • MySQL预处理语句例子
  • 预处理语句中使用表名作为变量

MySQL版本: 5.6
IDE: Navicat

MySQL预处理语句例子

使用预处理语句可以在不使用存储过程或者函数的情况下使用变量

PREPARE code_name FROM 'SELECT ?'; #FROM后面跟着字符串或者字符串的变量

SET @a=1;	#因为code_name中有?所以要设置变量给其使用

EXECUTE code_name USING @a;	#执行字符串中代表的语句并使用参数a	

DEALLOCATE PREPARE code_name;	#释放内存

预处理语句中使用表名作为变量

当表名为变量时,需要使用特殊的方法

SET @a = 'a';	#设置表名变量
SET @c_name = CONCAT('SELECT * FROM ',@a);	#用CONCAT把字符串和表名变量拼接在一起

PREPARE code_name FROM @c_name;		

EXECUTE code_name;	#执行语句

DEALLOCATE PREPARE code_name;	#释放内存

你可能感兴趣的:(数据分析师入门技能总结)