mysql print (写存储过程的时候输出值只能用select)

xiaoxiao2021-02-27  304

用惯sqlserver的同学都知道sqlserver输出可以直接用print,而mysql没有这个函数

下面我用一个例子告诉大家用select怎么达到这个效果

下面看我写的一个存储过程:

CREATE PROCEDURE usertest( fieldstr VARCHAR(200), tablename VARCHAR(200), orderstr VARCHAR(100), ordersort INT) BEGIN DECLARE sort VARCHAR(20); DECLARE tmpsql VARCHAR(500); SET sort = ''; IF ordersort=0 THEN SET sort='asc'; ELSE SET sort='desc'; END IF; SET @sqlcmd = CONCAT('select ' , fieldstr , ' from ' , tablename , ' order by ' , orderstr , ' ' , sort); PREPARE tmpsql FROM @sqlcmd; SELECT @sqlcmd; /*输出执行的sql语句*/ EXECUTE tmpsql; DEALLOCATE PREPARE tmpsql; END$$ DELIMITER ; 调用 : CALL usertest('id,username,usercode','test','usercode',1)

这里写的是一个简单的查询存储过程,用到了动态语句查询。执行结果我就不发出来了。

转载请注明原文地址: https://www.6miu.com/read-2590.html

最新回复(0)