I tried the following –
I created a variable at the command prompt as follows –
mysql> set @myId = 1; Query OK, 0 rows affected (0.00 sec)
Then, to display it, I tried the following without success –
mysql> show myId; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'myId' at line 1 mysql> show @myId; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@myId' at line 1 mysql> PRINT @myId; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'PRINT @myId' at line 1 mysql> PRINT myId; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'PRINT myId' at line 1
So how can I display the value of @myId
?
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
Simply SELECT
the variable like this:
SELECT @myId;
Here is the MySQL documentation on user-defined variables:
http://dev.mysql.com/doc/refman/5.5/en/user-variables.html
Method 2
If you’re looking for a variable that you set yourself like the OP did, then @MikeBrant’s answer is correct:
SELECT @myId;
But if you want to see the MySQL system variables (which is what I came here looking for), then you need to run:
show variables like '%slow%';
or possibly:
show global variables like '%slow%';
Method 3
SHOW GLOBAL STATUS LIKE ‘%com_stmt%’;
may be used to determine any SHOW GLOBAL STATUS current values using wildcard.
Likewise,
SELECT @@thread_cache_size;
may be used to display any specific SHOW GLOBAL VARIABLES current value.
There are more than 300 GLOBAL STATUS values.
There are more than 400 GLOBAL VARIABLES with or without values. (Could be empty placeholders).
You CAN NOT create a GLOBAL VARIABLE in MySQL.
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0