diff options
author | unknown <pem@mysql.comhem.se> | 2004-06-22 19:38:07 +0200 |
---|---|---|
committer | unknown <pem@mysql.comhem.se> | 2004-06-22 19:38:07 +0200 |
commit | 409afdc8a1f1ad715dbc5c5315be18ebbed77940 (patch) | |
tree | 0ec3a45a9e2b366990567cba2d2b6b9848869dd1 /sql/item_func.h | |
parent | 3d87ec49d8355924bafafdb120782b8960dd428a (diff) | |
download | mariadb-git-409afdc8a1f1ad715dbc5c5315be18ebbed77940.tar.gz |
Fixed BUG#3486: FOUND_ROWS() fails inside stored procedure [and prepared statement].
mysql-test/r/ps.result:
New test case for BUG#3486.
mysql-test/t/ps.test:
New test case for BUG#3486.
sql/item_create.cc:
Create an Item_func_found_rows() at parse time, not an Item_int.
sql/item_func.cc:
Added val_int() method for new Item_func_found_rows class.
sql/item_func.h:
New class Item_func_found_rows for FOUND_ROWS() function.
sql/sql_select.cc:
Don't reset thd->limit_found_rows too early, or FOUND_ROWS() wont work.
Diffstat (limited to 'sql/item_func.h')
-rw-r--r-- | sql/item_func.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index 39c0a47ed7c..c05c1b01259 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -1071,3 +1071,13 @@ enum Cast_target ITEM_CAST_BINARY, ITEM_CAST_SIGNED_INT, ITEM_CAST_UNSIGNED_INT, ITEM_CAST_DATE, ITEM_CAST_TIME, ITEM_CAST_DATETIME, ITEM_CAST_CHAR }; + + +class Item_func_found_rows :public Item_int_func +{ +public: + Item_func_found_rows() :Item_int_func() {} + longlong val_int(); + const char *func_name() const { return "found_rows"; } + void fix_length_and_dec() { decimals= 0; maybe_null=0; } +}; |