日期:2014-05-16  浏览次数:20698 次

急!execute的问题,请高手帮忙
ms   sql   server   2000   的sql语句如下:
declare   @selstr   varchar(1000)
set   @selstr= 'select   *   from   northwind.orders '
execute(@selstr)

如何改写成mysql   的语句??
请高手帮一下,急啊.

看下这样写对不对:
set   @selstr= 'select   *   from   northwind.orders ';
prepare   stmt   from   @selstr;
execute   stmt;

------解决方案--------------------

------解决方案--------------------
set @selstr= 'select * from northwind.orders '

这样是行不通的。

左右两边的类型不否。

不过SQL SERVER 和 MYSQL的都有一样的语法:

select @str = 'select top 1 from a ';
------解决方案--------------------
我只是举一个例子而已。

你写的本身就已经得不出任何结果:

select @str = 'select * from a limit 1 ';

这个是比较@str 和后面的字符串
答案肯定是FALSE

你如果只想给@str赋值的话应该这样:

select @str := 'select * from a limit 1 ';
或者:

set @str = 'select * from a limit 1 ';