diff --git a/sql/field.h b/sql/field.h
index 83c5a71f07f402b7ea60d77ea828069383311968..843961e64c3b66eac6d81a4685e80d0e21837723 100644
--- a/sql/field.h
+++ b/sql/field.h
@@ -352,6 +352,7 @@ class Field_str :public Field {
   Item_result result_type () const { return STRING_RESULT; }
   uint decimals() const { return NOT_FIXED_DEC; }
   int  store(double nr);
+  int  store(longlong nr)=0;
   int  store(const char *to,uint length,CHARSET_INFO *cs)=0;
   void make_field(Send_field *);
   uint size_of() const { return sizeof(*this); }
@@ -908,6 +909,7 @@ class Field_string :public Field_str {
   void reset(void) { charset()->cset->fill(charset(),ptr,field_length,' '); }
   int  store(const char *to,uint length,CHARSET_INFO *charset);
   int  store(longlong nr);
+  int store(double nr) { return Field_str::store(nr); }
   double val_real(void);
   longlong val_int(void);
   String *val_str(String*,String *);
@@ -953,6 +955,7 @@ class Field_varstring :public Field_str {
   uint32 key_length() const { return (uint32) field_length; }
   int  store(const char *to,uint length,CHARSET_INFO *charset);
   int  store(longlong nr);
+  int  store(double nr) { return Field_str::store(nr); }
   double val_real(void);
   longlong val_int(void);
   String *val_str(String*,String *);