CodeBlue
CodeBlue

Reputation: 15389

How to display the value of a variable at the commandline in MySQL?

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?

Upvotes: 73

Views: 124617

Answers (3)

Ryan Shillington
Ryan Shillington

Reputation: 25107

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%';

Upvotes: 11

Wilson Hauck
Wilson Hauck

Reputation: 2343

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.

Upvotes: 3

Mike Brant
Mike Brant

Reputation: 71384

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

Upvotes: 110

Related Questions