Commit 29593da2 authored by bell@sanja.is.com.ua's avatar bell@sanja.is.com.ua

showing table type now is controled by new parameter 'FULL' of SHOW TABLES...

showing table type now is controled by new parameter 'FULL' of SHOW TABLES command (SHOW FULL TABLES) (as it was decided on last dev conf)
parent 41ddca4d
show tables;
Tables_in_mysql table_type
columns_priv BASE TABLE
db BASE TABLE
func BASE TABLE
help_category BASE TABLE
help_keyword BASE TABLE
help_relation BASE TABLE
help_topic BASE TABLE
host BASE TABLE
proc BASE TABLE
tables_priv BASE TABLE
time_zone BASE TABLE
time_zone_leap_second BASE TABLE
time_zone_name BASE TABLE
time_zone_transition BASE TABLE
time_zone_transition_type BASE TABLE
user BASE TABLE
Tables_in_mysql
columns_priv
db
func
help_category
help_keyword
help_relation
help_topic
host
proc
tables_priv
time_zone
time_zone_leap_second
time_zone_name
time_zone_transition
time_zone_transition_type
user
show tables;
Tables_in_test table_type
Tables_in_test
grant ALL on *.* to test@localhost identified by "gambling";
grant ALL on *.* to test@127.0.0.1 identified by "gambling";
show tables;
Tables_in_mysql table_type
columns_priv BASE TABLE
db BASE TABLE
func BASE TABLE
help_category BASE TABLE
help_keyword BASE TABLE
help_relation BASE TABLE
help_topic BASE TABLE
host BASE TABLE
proc BASE TABLE
tables_priv BASE TABLE
time_zone BASE TABLE
time_zone_leap_second BASE TABLE
time_zone_name BASE TABLE
time_zone_transition BASE TABLE
time_zone_transition_type BASE TABLE
user BASE TABLE
Tables_in_mysql
columns_priv
db
func
help_category
help_keyword
help_relation
help_topic
host
proc
tables_priv
time_zone
time_zone_leap_second
time_zone_name
time_zone_transition
time_zone_transition_type
user
show tables;
Tables_in_test table_type
Tables_in_test
update mysql.user set password=old_password("gambling2") where user=_binary"test";
flush privileges;
set password="";
......@@ -47,24 +47,24 @@ set password='gambling3';
ERROR HY000: Password hash should be a 41-digit hexadecimal number
set password=old_password('gambling3');
show tables;
Tables_in_mysql table_type
columns_priv BASE TABLE
db BASE TABLE
func BASE TABLE
help_category BASE TABLE
help_keyword BASE TABLE
help_relation BASE TABLE
help_topic BASE TABLE
host BASE TABLE
proc BASE TABLE
tables_priv BASE TABLE
time_zone BASE TABLE
time_zone_leap_second BASE TABLE
time_zone_name BASE TABLE
time_zone_transition BASE TABLE
time_zone_transition_type BASE TABLE
user BASE TABLE
Tables_in_mysql
columns_priv
db
func
help_category
help_keyword
help_relation
help_topic
host
proc
tables_priv
time_zone
time_zone_leap_second
time_zone_name
time_zone_transition
time_zone_transition_type
user
show tables;
Tables_in_test table_type
Tables_in_test
delete from mysql.user where user=_binary"test";
flush privileges;
......@@ -45,8 +45,8 @@ CREATE TABLE `
CHAR(32) CHARACTER SET koi8r NOT NULL COMMENT " "
) COMMENT " ";
SHOW TABLES;
Tables_in_test table_type
BASE TABLE
Tables_in_test
SHOW CREATE TABLE ;
Table Create Table
CREATE TABLE `` (
......@@ -57,8 +57,8 @@ Field Type Null Key Default Extra
char(32)
SET CHARACTER SET cp1251;
SHOW TABLES;
Tables_in_test table_type
BASE TABLE
Tables_in_test
SHOW CREATE TABLE ;
Table Create Table
CREATE TABLE `` (
......@@ -69,8 +69,8 @@ Field Type Null Key Default Extra
char(32)
SET CHARACTER SET utf8;
SHOW TABLES;
Tables_in_test table_type
таблица BASE TABLE
Tables_in_test
таблица
SHOW CREATE TABLE таблица;
Table Create Table
таблица CREATE TABLE `таблица` (
......@@ -93,14 +93,14 @@ SET CHARACTER SET koi8r;
CREATE DATABASE ;
USE ;
SHOW TABLES;
Tables_in_ table_type
Tables_in_
SHOW TABLES IN ;
Tables_in_ table_type
Tables_in_
SET CHARACTER SET cp1251;
SHOW TABLES;
Tables_in_ table_type
Tables_in_
SHOW TABLES IN ;
Tables_in_ table_type
Tables_in_
SET CHARACTER SET koi8r;
DROP DATABASE ;
SET NAMES koi8r;
......
......@@ -52,6 +52,6 @@ ERROR HY000: Can't execute the query because you have a conflicting read lock
unlock tables;
create table t1(n int);
show tables;
Tables_in_test table_type
t1 BASE TABLE
Tables_in_test
t1
drop table t1;
......@@ -26,9 +26,9 @@ RENAME TABLE T1 TO T2;
ALTER TABLE T2 ADD new_col int not null;
ALTER TABLE T2 RENAME T3;
show tables like 't_';
Tables_in_test (t_) table_type
t3 BASE TABLE
t4 BASE TABLE
Tables_in_test (t_)
t3
t4
drop table t3,t4;
create table t1 (a int);
select count(*) from T1;
......@@ -79,4 +79,4 @@ select C.a, c.a from t1 c, t2 C;
ERROR 42000: Not unique table/alias: 'C'
drop table t1, t2;
show tables;
Tables_in_test table_type
Tables_in_test
......@@ -20,10 +20,10 @@ Got one of the listed errors
rename table t3 to t4, t2 to t3, t1 to t2, t4 to t2;
Got one of the listed errors
show tables like "t_";
Tables_in_test (t_) table_type
t1 BASE TABLE
t2 BASE TABLE
t3 BASE TABLE
Tables_in_test (t_)
t1
t2
t3
rename table t3 to t1, t2 to t3, t1 to t2, t4 to t1;
Got one of the listed errors
rename table t3 to t4, t5 to t3, t1 to t2, t4 to t1;
......@@ -45,12 +45,12 @@ CREATE TABLE t3 (a int);
FLUSH TABLES WITH READ LOCK;
RENAME TABLE t1 TO t2, t3 to t4;
show tables;
Tables_in_test table_type
t1 BASE TABLE
t3 BASE TABLE
Tables_in_test
t1
t3
UNLOCK TABLES;
show tables;
Tables_in_test table_type
t2 BASE TABLE
t4 BASE TABLE
Tables_in_test
t2
t4
drop table t2, t4;
......@@ -73,25 +73,25 @@ mysqltest3
test
use mysqltest2;
show tables;
Tables_in_mysqltest2 table_type
t1 BASE TABLE
t3 BASE TABLE
Tables_in_mysqltest2
t1
t3
select * from t1;
n s
1 original foo.t1
use mysqltest3;
show tables;
Tables_in_mysqltest3 table_type
t1 BASE TABLE
Tables_in_mysqltest3
t1
select * from t1;
n s
1 original foo2.t1
use mysqltest;
show tables;
Tables_in_mysqltest table_type
t1 BASE TABLE
t2 BASE TABLE
t3 BASE TABLE
Tables_in_mysqltest
t1
t2
t3
select * from mysqltest.t1;
n s
1 one test
......
......@@ -11,7 +11,7 @@ show slave status;
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 273 # # master-bin.000001 Yes Yes test.t3,test.t1,test.t2 0 0 273 # None 0 No #
show tables like 't1';
Tables_in_test (t1) table_type
Tables_in_test (t1)
drop table t1;
select get_lock('crash_lock%20C', 10);
get_lock('crash_lock%20C', 10)
......
......@@ -2022,15 +2022,15 @@ select period as "Nuvarande period" from t1 group by "Nuvarande period" limit 1;
Nuvarande period
9410
show tables;
Tables_in_test table_type
t1 BASE TABLE
t2 BASE TABLE
t3 BASE TABLE
t4 BASE TABLE
Tables_in_test
t1
t2
t3
t4
show tables from test like "s%";
Tables_in_test (s%) table_type
Tables_in_test (s%)
show tables from test like "t?";
Tables_in_test (t?) table_type
Tables_in_test (t?)
show full columns from t2;
Field Type Collation Null Key Default Extra Privileges Comment
auto int(11) NULL PRI NULL auto_increment select,insert,update,references
......
......@@ -1659,7 +1659,7 @@ Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
Update Tables To update existing rows
Usage Server Admin No privileges - allow connect only
Variable_name Value
Tables_in_test (foo) table_type
Tables_in_test (foo)
Variable_name Value
Level Code Message
call bug4902()|
......@@ -1709,7 +1709,7 @@ Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
Update Tables To update existing rows
Usage Server Admin No privileges - allow connect only
Variable_name Value
Tables_in_test (foo) table_type
Tables_in_test (foo)
Variable_name Value
Level Code Message
drop procedure bug4902|
......
show tables;
Tables_in_db table_type
columns_priv BASE TABLE
db BASE TABLE
func BASE TABLE
help_category BASE TABLE
help_keyword BASE TABLE
help_relation BASE TABLE
help_topic BASE TABLE
host BASE TABLE
proc BASE TABLE
tables_priv BASE TABLE
time_zone BASE TABLE
time_zone_leap_second BASE TABLE
time_zone_name BASE TABLE
time_zone_transition BASE TABLE
time_zone_transition_type BASE TABLE
user BASE TABLE
Tables_in_db
columns_priv
db
func
help_category
help_keyword
help_relation
help_topic
host
proc
tables_priv
time_zone
time_zone_leap_second
time_zone_name
time_zone_transition
time_zone_transition_type
user
show create table db;
Table Create Table
db CREATE TABLE `db` (
......@@ -134,4 +134,4 @@ columns_priv CREATE TABLE `columns_priv` (
PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`,`Column_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Column privileges'
show tables;
Tables_in_test table_type
Tables_in_test
......@@ -130,6 +130,15 @@ id select_type table type possible_keys key key_len ref rows Extra
Warnings:
Note 1003 select `v6`.`c` AS `c` from `test`.`v6`
show tables;
Tables_in_test
t1
v1
v2
v3
v4
v5
v6
show full tables;
Tables_in_test table_type
t1 BASE TABLE
v1 VIEW
......@@ -1043,7 +1052,7 @@ drop table t1;
CREATE VIEW v02 AS SELECT * FROM DUAL;
ERROR HY000: No tables used
SHOW TABLES;
Tables_in_test table_type
Tables_in_test
CREATE VIEW v1 AS SELECT EXISTS (SELECT 1 UNION SELECT 2);
select * from v1;
EXISTS (SELECT 1 UNION SELECT 2)
......
......@@ -82,6 +82,7 @@ explain extended select c from v6;
# show table/table status test
show tables;
show full tables;
--replace_column 12 # 13 #
show table status;
......
......@@ -688,7 +688,8 @@ int mysql_do(THD *thd, List<Item> &values);
/* sql_show.cc */
int mysqld_show_dbs(THD *thd,const char *wild);
int mysqld_show_open_tables(THD *thd,const char *wild);
int mysqld_show_tables(THD *thd,const char *db,const char *wild);
int mysqld_show_tables(THD *thd, const char *db, const char *wild,
bool verbose);
int mysqld_extend_show_tables(THD *thd,const char *db,const char *wild);
int mysqld_show_fields(THD *thd,TABLE_LIST *table, const char *wild,
bool verbose);
......
......@@ -3053,8 +3053,9 @@ mysql_execute_command(THD *thd)
res= mysqld_extend_show_tables(thd,db,
(lex->wild ? lex->wild->ptr() : NullS));
else
res= mysqld_show_tables(thd,db,
(lex->wild ? lex->wild->ptr() : NullS));
res= mysqld_show_tables(thd, db,
(lex->wild ? lex->wild->ptr() : NullS),
lex->verbose);
break;
}
#endif
......
......@@ -137,7 +137,8 @@ int mysqld_show_open_tables(THD *thd,const char *wild)
** A table is a .frm file in the current databasedir
***************************************************************************/
int mysqld_show_tables(THD *thd,const char *db,const char *wild)
int mysqld_show_tables(THD *thd, const char *db, const char *wild,
bool show_type)
{
Item_string *field=new Item_string("",0,thd->charset());
List<Item> field_list;
......@@ -146,8 +147,6 @@ int mysqld_show_tables(THD *thd,const char *db,const char *wild)
char *file_name;
Protocol *protocol= thd->protocol;
uint len;
bool show_type = !test(thd->variables.sql_mode &
(MODE_NO_FIELD_OPTIONS | MODE_MYSQL323));
DBUG_ENTER("mysqld_show_tables");
field->name=(char*) thd->alloc(20+(uint) strlen(db)+
......
......@@ -5844,11 +5844,11 @@ show: SHOW
show_param:
DATABASES wild
{ Lex->sql_command= SQLCOM_SHOW_DATABASES; }
| TABLES opt_db wild
| opt_full TABLES opt_db wild
{
LEX *lex= Lex;
lex->sql_command= SQLCOM_SHOW_TABLES;
lex->select_lex.db= $2;
lex->select_lex.db= $3;
}
| TABLE_SYM STATUS_SYM opt_db wild
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment