MySQL 8.0.39
Source Code Documentation
statistics.h
Go to the documentation of this file.
1/* Copyright (c) 2017, 2024, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is designed to work with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have either included with
13 the program or referenced in the documentation.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License, version 2.0, for more details.
19
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
23
24#ifndef DD_SYSTEM_VIEWS__STATISTICS_INCLUDED
25#define DD_SYSTEM_VIEWS__STATISTICS_INCLUDED
26
29#include "sql/dd/string_type.h"
30
31namespace dd {
32namespace system_views {
33
34/*
35 The class representing INFORMATION_SCHEMA.STATISTICS system view
36 definition.
37*/
39 : public System_view_impl<System_view_select_definition_impl> {
40 public:
62 };
63
65
66 const String_type &name() const override = 0;
67};
68
69/*
70 The class representing INFORMATION_SCHEMA.STATISTICS system view definition
71*/
73 public:
74 Statistics();
75
76 static const Statistics_base &instance();
77
78 static const String_type &view_name() {
79 static String_type s_view_name("STATISTICS");
80 return s_view_name;
81 }
82
83 const String_type &name() const override { return Statistics::view_name(); }
84};
85
86/*
87 The class represents system view definition used by SHOW STATISTICS when
88*/
90 public:
92
93 static const Statistics_base &instance();
94
95 static const String_type &view_name() {
96 static String_type s_view_name("SHOW_STATISTICS");
97 return s_view_name;
98 }
99
100 const String_type &name() const override {
102 }
103
104 // This view definition is hidden from user.
105 bool hidden() const override { return true; }
106};
107
108} // namespace system_views
109} // namespace dd
110
111#endif // DD_SYSTEM_VIEWS__STATISTICS_INCLUDED
Definition: statistics.h:89
static const String_type & view_name()
Definition: statistics.h:95
bool hidden() const override
Definition: statistics.h:105
Show_statistics()
Definition: statistics.cc:127
static const Statistics_base & instance()
Definition: statistics.cc:38
const String_type & name() const override
Definition: statistics.h:100
Definition: statistics.h:39
const String_type & name() const override=0
Statistics_base()
Definition: statistics.cc:43
enum_fields
Definition: statistics.h:41
@ FIELD_TABLE_SCHEMA
Definition: statistics.h:43
@ FIELD_IS_VISIBLE
Definition: statistics.h:58
@ FIELD_COMMENT
Definition: statistics.h:56
@ FIELD_PACKED
Definition: statistics.h:53
@ FIELD_INDEX_COMMENT
Definition: statistics.h:57
@ FIELD_INDEX_SCHEMA
Definition: statistics.h:46
@ FIELD_INDEX_ORDINAL_POSITION
Definition: statistics.h:59
@ FIELD_SUB_PART
Definition: statistics.h:52
@ FIELD_NON_UNIQUE
Definition: statistics.h:45
@ FIELD_TABLE_CATALOG
Definition: statistics.h:42
@ FIELD_COLUMN_NAME
Definition: statistics.h:49
@ FIELD_INDEX_TYPE
Definition: statistics.h:55
@ FIELD_EXPRESSION
Definition: statistics.h:61
@ FIELD_COLLATION
Definition: statistics.h:50
@ FIELD_INDEX_NAME
Definition: statistics.h:47
@ FIELD_NULLABLE
Definition: statistics.h:54
@ FIELD_CARDINALITY
Definition: statistics.h:51
@ FIELD_SEQ_IN_INDEX
Definition: statistics.h:48
@ FIELD_COLUMN_ORDINAL_POSITION
Definition: statistics.h:60
@ FIELD_TABLE_NAME
Definition: statistics.h:44
Definition: statistics.h:72
static const String_type & view_name()
Definition: statistics.h:78
static const Statistics_base & instance()
Definition: statistics.cc:33
const String_type & name() const override
Definition: statistics.h:83
Statistics()
Definition: statistics.cc:105
Definition: system_view_impl.h:33
const dd::String_type s_view_name
Definition: columns_extensions.cc:40
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:51