summaryrefslogtreecommitdiff
path: root/sql/field.h
diff options
context:
space:
mode:
authorunknown <Sinisa@sinisa.nasamreza.org>2001-12-29 15:15:51 +0200
committerunknown <Sinisa@sinisa.nasamreza.org>2001-12-29 15:15:51 +0200
commit6ffd555155360ad13ab9bf1f8b050f3d46edb17d (patch)
treee570d4c59b3a7727411fc9c0a6fe51a149353d6f /sql/field.h
parentc865e96362b75d1d59ac31c9a2fd34ee1ccdf058 (diff)
downloadmariadb-git-6ffd555155360ad13ab9bf1f8b050f3d46edb17d.tar.gz
Code that had to be changed so that CREATE ... SELECT ... always
creates proper column types, out of any function, expression or from other tables. mysql-test/r/create.result: This is a result for the test which creates all proper column types out of CREATE ... SELECT ...
Diffstat (limited to 'sql/field.h')
-rw-r--r--sql/field.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sql/field.h b/sql/field.h
index 861f2629550..a9b257f0c3a 100644
--- a/sql/field.h
+++ b/sql/field.h
@@ -593,6 +593,10 @@ public:
:Field_str(ptr_arg, 10, null_ptr_arg, null_bit_arg,
unireg_check_arg, field_name_arg, table_arg)
{}
+ Field_date(bool maybe_null_arg, const char *field_name_arg,
+ struct st_table *table_arg)
+ :Field_str((char*) 0,10, maybe_null_arg ? (uchar*) "": 0,0,
+ NONE, field_name_arg, table_arg) {}
enum_field_types type() const { return FIELD_TYPE_DATE;}
enum ha_base_keytype key_type() const { return HA_KEYTYPE_ULONG_INT; }
enum Item_result cmp_type () const { return INT_RESULT; }
@@ -650,6 +654,10 @@ public:
:Field_str(ptr_arg, 8, null_ptr_arg, null_bit_arg,
unireg_check_arg, field_name_arg, table_arg)
{}
+ Field_time(bool maybe_null_arg, const char *field_name_arg,
+ struct st_table *table_arg)
+ :Field_str((char*) 0,8, maybe_null_arg ? (uchar*) "": 0,0,
+ NONE, field_name_arg, table_arg) {}
enum_field_types type() const { return FIELD_TYPE_TIME;}
enum ha_base_keytype key_type() const { return HA_KEYTYPE_INT24; }
enum Item_result cmp_type () const { return INT_RESULT; }
@@ -678,6 +686,10 @@ public:
:Field_str(ptr_arg, 19, null_ptr_arg, null_bit_arg,
unireg_check_arg, field_name_arg, table_arg)
{}
+ Field_datetime(bool maybe_null_arg, const char *field_name_arg,
+ struct st_table *table_arg)
+ :Field_str((char*) 0,19, maybe_null_arg ? (uchar*) "": 0,0,
+ NONE, field_name_arg, table_arg) {}
enum_field_types type() const { return FIELD_TYPE_DATETIME;}
#ifdef HAVE_LONG_LONG
enum ha_base_keytype key_type() const { return HA_KEYTYPE_ULONGLONG; }