Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
1f9b403b
Commit
1f9b403b
authored
May 23, 2007
by
ramil/ram@ramil.myoffice.izhnet.ru
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/ram/work/mysql-5.0-maint
into mysql.com:/home/ram/work/b28509/b28509.5.0
parents
f1ae9793
11a2fd42
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
4 deletions
+19
-4
mysql-test/r/ps.result
mysql-test/r/ps.result
+9
-0
mysql-test/t/ps.test
mysql-test/t/ps.test
+8
-0
sql/item.cc
sql/item.cc
+2
-4
No files found.
mysql-test/r/ps.result
View file @
1f9b403b
...
...
@@ -1683,4 +1683,13 @@ execute stmt;
ERROR 42S22: Unknown column 'y.value' in 'field list'
deallocate prepare stmt;
drop tables t1;
prepare stmt from "create table t1 select ?";
set @a=1.0;
execute stmt using @a;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`?` decimal(2,1) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
End of 5.0 tests.
mysql-test/t/ps.test
View file @
1f9b403b
...
...
@@ -1791,5 +1791,13 @@ execute stmt;
deallocate
prepare
stmt
;
drop
tables
t1
;
#
# Bug #28509: strange behaviour: passing a decimal value to PS
#
prepare
stmt
from
"create table t1 select ?"
;
set
@
a
=
1.0
;
execute
stmt
using
@
a
;
show
create
table
t1
;
drop
table
t1
;
--
echo
End
of
5.0
tests
.
sql/item.cc
View file @
1f9b403b
...
...
@@ -2507,16 +2507,14 @@ bool Item_param::set_from_user_var(THD *thd, const user_var_entry *entry)
if
(
entry
&&
entry
->
value
)
{
item_result_type
=
entry
->
type
;
switch
(
entry
->
type
)
{
switch
(
item_result_
type
)
{
case
REAL_RESULT
:
set_double
(
*
(
double
*
)
entry
->
value
);
item_type
=
Item
::
REAL_ITEM
;
item_result_type
=
REAL_RESULT
;
break
;
case
INT_RESULT
:
set_int
(
*
(
longlong
*
)
entry
->
value
,
MY_INT64_NUM_DECIMAL_DIGITS
);
item_type
=
Item
::
INT_ITEM
;
item_result_type
=
INT_RESULT
;
break
;
case
STRING_RESULT
:
{
...
...
@@ -2538,7 +2536,6 @@ bool Item_param::set_from_user_var(THD *thd, const user_var_entry *entry)
charset of connection, so we have to set it later.
*/
item_type
=
Item
::
STRING_ITEM
;
item_result_type
=
STRING_RESULT
;
if
(
set_str
((
const
char
*
)
entry
->
value
,
entry
->
length
))
DBUG_RETURN
(
1
);
...
...
@@ -2552,6 +2549,7 @@ bool Item_param::set_from_user_var(THD *thd, const user_var_entry *entry)
decimals
=
ent_value
->
frac
;
max_length
=
my_decimal_precision_to_length
(
ent_value
->
precision
(),
decimals
,
unsigned_flag
);
item_type
=
Item
::
DECIMAL_ITEM
;
break
;
}
default:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment