MYSQL执行SQL字符串(含可变参数)

需求

执行字符串类型的SQL,如:"select student_name from student_info;"

不需要传递参数

/*指定SQL内容*/
SET @sql_content="select 1999";
/*预处理SQL,如果SQL格式不对,则会报错。*/
PREPARE sql_sentence FROM @sql_content;
/*执行SQL*/
EXECUTE sql_sentence;
/*取消预处理。*/
DEALLOCATE PREPARE sql_sentence;

需要传递参数

/*传递参数,以传递@param_id、@param_id2为例。*/
SET @param_id='1', @param_id2='2';
SET @sql_content="select ? param_id,? param_id2";
PREPARE sql_sentence FROM @sql_content;
/*注意参数顺序。*/
EXECUTE sql_sentence USING @param_id,@param_id2;
DEALLOCATE PREPARE sql_sentence;

 

你可能感兴趣的:(MySQL)