Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
7c4ab566
Commit
7c4ab566
authored
Sep 16, 2004
by
bar@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Return character strings in table, type, possible_keys, key fields
of EXPLAIN SELECT, rather than binary strings.
parent
9df91321
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
110 additions
and
108 deletions
+110
-108
mysql-test/r/ps_1general.result
mysql-test/r/ps_1general.result
+14
-14
mysql-test/r/ps_2myisam.result
mysql-test/r/ps_2myisam.result
+14
-14
mysql-test/r/ps_3innodb.result
mysql-test/r/ps_3innodb.result
+14
-14
mysql-test/r/ps_4heap.result
mysql-test/r/ps_4heap.result
+14
-14
mysql-test/r/ps_5merge.result
mysql-test/r/ps_5merge.result
+28
-28
mysql-test/r/ps_6bdb.result
mysql-test/r/ps_6bdb.result
+14
-14
sql/item.h
sql/item.h
+2
-2
sql/sql_class.cc
sql/sql_class.cc
+10
-8
No files found.
mysql-test/r/ps_1general.result
View file @
7c4ab566
...
...
@@ -414,15 +414,15 @@ prepare stmt1 from ' explain select a from t1 order by b ';
execute stmt1;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 6 N 1 31
63
def table 253 64 2 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 6 N 1 31
8
def table 253 64 2 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 14 N 1 31
63
def Extra 253 255 14 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using filesort
SET @arg00=1 ;
...
...
@@ -430,15 +430,15 @@ prepare stmt1 from ' explain select a from t1 where a > ? order by b ';
execute stmt1 using @arg00;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 6 N 1 31
63
def table 253 64 2 N 1 31
63
def type 253 10 5 N 1 31
63
def possible_keys 253 4096 7 Y 0 31
63
def key 253 64 7 Y 0 31
63
def select_type 253 19 6 N 1 31
8
def table 253 64 2 N 1 31
8
def type 253 10 5 N 1 31
8
def possible_keys 253 4096 7 Y 0 31
8
def key 253 64 7 Y 0 31
8
def key_len 8 3 1 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 27 N 1 31
63
def Extra 253 255 27 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 3 Using where; Using filesort
test_sequence
...
...
mysql-test/r/ps_2myisam.result
View file @
7c4ab566
...
...
@@ -574,15 +574,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -645,15 +645,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
mysql-test/r/ps_3innodb.result
View file @
7c4ab566
...
...
@@ -574,15 +574,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -645,15 +645,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
mysql-test/r/ps_4heap.result
View file @
7c4ab566
...
...
@@ -575,15 +575,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -646,15 +646,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
mysql-test/r/ps_5merge.result
View file @
7c4ab566
...
...
@@ -617,15 +617,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -688,15 +688,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -1812,15 +1812,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -1883,15 +1883,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
mysql-test/r/ps_6bdb.result
View file @
7c4ab566
...
...
@@ -574,15 +574,15 @@ prepare stmt1 from @stmt ;
execute stmt1 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
@@ -645,15 +645,15 @@ execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
@arg07, @arg08, @arg09 ;
Catalog Database Table Table_alias Column Column_alias Name Type Length Max length Is_null Flags Decimals Charsetnr
def id 8 3 1 N 32801 0 8
def select_type 253 19 18 N 1 31
63
def table 253 64 16 N 1 31
63
def type 253 10 3 N 1 31
63
def possible_keys 253 4096 0 Y 0 31
63
def key 253 64 0 Y 0 31
63
def select_type 253 19 18 N 1 31
8
def table 253 64 16 N 1 31
8
def type 253 10 3 N 1 31
8
def possible_keys 253 4096 0 Y 0 31
8
def key 253 64 0 Y 0 31
8
def key_len 8 3 0 Y 32800 0 8
def ref 253 1024 0 Y 0 31
63
def ref 253 1024 0 Y 0 31
8
def rows 8 10 1 N 32801 0 8
def Extra 253 255 44 N 1 31
63
def Extra 253 255 44 N 1 31
8
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t_many_col_types ALL NULL NULL NULL NULL 2
1 PRIMARY <derived6> ALL NULL NULL NULL NULL 2 Using where
...
...
sql/item.h
View file @
7c4ab566
...
...
@@ -706,8 +706,8 @@ class Item_datetime :public Item_string
class
Item_empty_string
:
public
Item_string
{
public:
Item_empty_string
(
const
char
*
header
,
uint
length
)
:
Item_string
(
""
,
0
,
&
my_charset_bin
)
Item_empty_string
(
const
char
*
header
,
uint
length
,
CHARSET_INFO
*
cs
=
NULL
)
:
Item_string
(
""
,
0
,
cs
?
cs
:
&
my_charset_bin
)
{
name
=
(
char
*
)
header
;
max_length
=
length
;}
void
make_field
(
Send_field
*
field
);
};
...
...
sql/sql_class.cc
View file @
7c4ab566
...
...
@@ -654,27 +654,29 @@ CHANGED_TABLE_LIST* THD::changed_table_dup(const char *key, long key_length)
return
new_table
;
}
int
THD
::
send_explain_fields
(
select_result
*
result
)
{
List
<
Item
>
field_list
;
Item
*
item
;
CHARSET_INFO
*
cs
=
system_charset_info
;
field_list
.
push_back
(
new
Item_return_int
(
"id"
,
3
,
MYSQL_TYPE_LONGLONG
));
field_list
.
push_back
(
new
Item_empty_string
(
"select_type"
,
19
));
field_list
.
push_back
(
new
Item_empty_string
(
"table"
,
NAME_LEN
));
field_list
.
push_back
(
new
Item_empty_string
(
"type"
,
10
));
field_list
.
push_back
(
new
Item_empty_string
(
"select_type"
,
19
,
cs
));
field_list
.
push_back
(
new
Item_empty_string
(
"table"
,
NAME_LEN
,
cs
));
field_list
.
push_back
(
new
Item_empty_string
(
"type"
,
10
,
cs
));
field_list
.
push_back
(
item
=
new
Item_empty_string
(
"possible_keys"
,
NAME_LEN
*
MAX_KEY
));
NAME_LEN
*
MAX_KEY
,
cs
));
item
->
maybe_null
=
1
;
field_list
.
push_back
(
item
=
new
Item_empty_string
(
"key"
,
NAME_LEN
));
field_list
.
push_back
(
item
=
new
Item_empty_string
(
"key"
,
NAME_LEN
,
cs
));
item
->
maybe_null
=
1
;
field_list
.
push_back
(
item
=
new
Item_return_int
(
"key_len"
,
3
,
MYSQL_TYPE_LONGLONG
));
item
->
maybe_null
=
1
;
field_list
.
push_back
(
item
=
new
Item_empty_string
(
"ref"
,
NAME_LEN
*
MAX_REF_PARTS
));
NAME_LEN
*
MAX_REF_PARTS
,
cs
));
item
->
maybe_null
=
1
;
field_list
.
push_back
(
new
Item_return_int
(
"rows"
,
10
,
MYSQL_TYPE_LONGLONG
));
field_list
.
push_back
(
new
Item_empty_string
(
"Extra"
,
255
));
field_list
.
push_back
(
new
Item_return_int
(
"rows"
,
10
,
MYSQL_TYPE_LONGLONG
));
field_list
.
push_back
(
new
Item_empty_string
(
"Extra"
,
255
,
cs
));
return
(
result
->
send_fields
(
field_list
,
1
));
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment