diff options
author | unknown <monty@mysql.com> | 2003-11-20 22:30:48 +0200 |
---|---|---|
committer | unknown <monty@mysql.com> | 2003-11-20 22:30:48 +0200 |
commit | 411b610e7169405ba1fbd8d3c8d4d30fb204dd14 (patch) | |
tree | 47f72b790e762b88773ac94032106a9fec3ee4a4 /sql/item.cc | |
parent | 671cc0a57491e8084b06a7aa6153f0d05c8ae6ef (diff) | |
parent | cd878c2c8a4a639b2a7147ecf00ce791e15faa42 (diff) | |
download | mariadb-git-411b610e7169405ba1fbd8d3c8d4d30fb204dd14.tar.gz |
Merge with 4.0 to get:
Fix for storing negative values in decimal fields
Fix for FLUSH TABLE with HANDLER
BitKeeper/etc/ignore:
auto-union
libmysql_r/Makefile.am:
Auto merged
myisam/mi_check.c:
Auto merged
mysql-test/r/bigint.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/bigint.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
mysql-test/r/rpl_loaddata.result:
Merge with 4.0
sql/item.cc:
Merge with 4.0 to get fix for storing negative values in decimal fields
sql/item.h:
Merge with 4.0 to get fix for storing negative values in decimal fields
sql/sql_handler.cc:
Merge with 4.0 to get fix for FLUSH TABLE with HANDLER
sql/sql_repl.cc:
Merge with 4.0
sql/sql_select.cc:
Used original file.
(Comments moved to sql/sql_select.h)
Diffstat (limited to 'sql/item.cc')
-rw-r--r-- | sql/item.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/item.cc b/sql/item.cc index f41cb720f12..d5401b85755 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -1190,6 +1190,21 @@ int Item_string::save_in_field(Field *field, bool no_conversions) -1 : 0; } +int Item_uint::save_in_field(Field *field, bool no_conversions) +{ + longlong nr= val_int(); + int res; + + if (null_value) + return set_field_to_null(field); + field->set_notnull(); + if (nr < 0) + res= field->store(ulonglong2double(nr); + else + res= field->store(nr); + return res ? -1 : 0; +} + int Item_int::save_in_field(Field *field, bool no_conversions) { |