summaryrefslogtreecommitdiff
path: root/sql/set_var.h
diff options
context:
space:
mode:
authorunknown <bar@bar.mysql.r18.ru>2003-04-08 14:38:17 +0500
committerunknown <bar@bar.mysql.r18.ru>2003-04-08 14:38:17 +0500
commit8c95b516254b3af107dc8d8407f864ebcce79ee5 (patch)
tree61ea115f17b75a76465238e1d7d684f336c0f646 /sql/set_var.h
parentf20835c7aa678dfb043d683346bec920ce8895d9 (diff)
downloadmariadb-git-8c95b516254b3af107dc8d8407f864ebcce79ee5.tar.gz
Use of CHARSWT_INFO *result_collation
instead of bool convert_result_charset SET CHARACTER SET inststead of SET NAMES in tests
Diffstat (limited to 'sql/set_var.h')
-rw-r--r--sql/set_var.h23
1 files changed, 17 insertions, 6 deletions
diff --git a/sql/set_var.h b/sql/set_var.h
index 51f59981e14..69e6bc05a67 100644
--- a/sql/set_var.h
+++ b/sql/set_var.h
@@ -438,6 +438,15 @@ public:
byte *value_ptr(THD *thd, enum_var_type type);
};
+class sys_var_result_collation :public sys_var_collation
+{
+public:
+ sys_var_result_collation(const char *name_arg) :sys_var_collation(name_arg) {}
+ bool update(THD *thd, set_var *var);
+ void set_default(THD *thd, enum_var_type type);
+ byte *value_ptr(THD *thd, enum_var_type type);
+};
+
/* Variable that you can only read from */
@@ -546,14 +555,16 @@ public:
class set_var_client_collation: public set_var_base
{
- CHARSET_INFO *client_charset;
CHARSET_INFO *client_collation;
- my_bool convert_result_charset;
+ CHARSET_INFO *literal_collation;
+ CHARSET_INFO *result_collation;
public:
- set_var_client_collation(CHARSET_INFO *cset_arg,
- CHARSET_INFO *coll_arg ,my_bool conv_arg)
- :client_charset(cset_arg), client_collation(coll_arg),
- convert_result_charset(conv_arg)
+ set_var_client_collation(CHARSET_INFO *client_coll_arg,
+ CHARSET_INFO *literal_coll_arg,
+ CHARSET_INFO *result_coll_arg)
+ :client_collation(client_coll_arg),
+ literal_collation(literal_coll_arg),
+ result_collation(result_coll_arg)
{}
int check(THD *thd);
int update(THD *thd);