2013-06-20 45 views
1

引用: SET user defined variable in mysql return null?SQLyog的設置變量爲MySQL返回null

我測試了以下代碼:

SET @rank=0; 
SELECT *, @rank:[email protected]+1 AS rank FROM points 

對於在phpMyAdmin它返回:

id | user_id | points | rank 
----------------------------- 
2 | 133845 | 220 | 1 
4 | 134084 | 220 | 2 
5 |  1 | 150 | 3 
7 | 134086 | 145 | 4 


然而,在SQLYog所有的行列返回爲「NULL「我檢查了我的配置並將超時設置爲28800秒,並關閉了壓縮協議。 MySQL似乎停留在單個會話上,但SQLYog似乎使用兩個連接來執行此查詢。我怎樣才能將應用程序設置爲一個單一的連接,所以我不會失去變量值?

+0

您是否使用「執行所有語句」命令? 我在這裏試過,它工作正常。您還可以在forums.webyog.com上創建帖子以獲取進一步幫助。 –

+0

我在SQLyog(v11)上得到了相同的錯誤行爲。這裏是如何重現它: SET \@year := 2014; SELECT \@year as Year; 年將返回NULL。 – userfuser

+0

關於我上面的評論 - 只需從「\ @year」中刪除「\」符號即可。 – userfuser

回答

0

一個實例中的多個查詢。他們被堆放在個別情況下。

由於Jan建議「執行所有語句」命令應該做的伎倆。