gpt4 book ai didi

mysql - procedure 参数是 int,但是当使用 double 调用 procedure 时,它​​会编译

转载 作者:行者123 更新时间:2023-11-29 14:15:37 29 4
gpt4 key购买 nike

正如您在下面看到的,我的过程有两个参数。我希望它们都是整数。但是,当我使用非整数测试该过程时,它仍然可以编译!为什么?

 create procedure int_arith( p_1 int, p_2 int)
begin
select coalesce(p_1 + p_2, 'Null entry') addition;
end;
#

call test.a03_int_arith(10,3.3)\G

结果是:

        addition: 13

最佳答案

在某些语言中,将 double 提升为 int 是有效的(请参阅类型转换)。发生的情况是解释器(无论什么编译器)在 3.3 中看到 double,并将其截断为整数(隐式将 double 转换为 int)。

关于mysql - procedure 参数是 int,但是当使用 double 调用 procedure 时,它​​会编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12753012/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com