diff options
author | bell@sanja.is.com.ua <> | 2003-10-24 17:28:32 +0300 |
---|---|---|
committer | bell@sanja.is.com.ua <> | 2003-10-24 17:28:32 +0300 |
commit | f349adf8de5be3d5f1a5ba09913828795a59c8d3 (patch) | |
tree | 63bd3fb6c3566519729c8f88b30bbb74d936361e /sql/item_func.h | |
parent | 4e1920762ab8af492181d9d32261a64ce7e3ddb2 (diff) | |
download | mariadb-git-f349adf8de5be3d5f1a5ba09913828795a59c8d3.tar.gz |
support 'parallel' updates and rallback of whole statement in case of error in evalueting value which should be assigned
(BUG#1484)
Diffstat (limited to 'sql/item_func.h')
-rw-r--r-- | sql/item_func.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index 8086e65786d..fe9c2645216 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -900,6 +900,14 @@ class Item_func_set_user_var :public Item_func user_var_entry *entry; char buffer[MAX_FIELD_WIDTH]; String value; + union + { + longlong vint; + double vreal; + String *vstr; + } save_result; + String save_buff; + public: Item_func_set_user_var(LEX_STRING a,Item *b) @@ -910,6 +918,7 @@ public: String *val_str(String *str); bool update_hash(void *ptr, uint length, enum Item_result type, CHARSET_INFO *cs, Derivation dv); + bool check(); bool update(); enum Item_result result_type () const { return cached_result_type; } bool fix_fields(THD *thd, struct st_table_list *tables, Item **ref); |