gpt4 book ai didi

sql - Sql Server 2000 中类型的算术溢出错误

转载 作者:行者123 更新时间:2023-12-02 21:30:54 24 4
gpt4 key购买 nike

在 SQL SERVER 2000 表中,有一列名为 Kpi 的 float 类型。当尝试将该列转换为 varchar(cast(kpi as varchar(3))) 时,会出现错误

Msg 232, Level 16, State 2, Line 1
Arithmetic overflow error for type varchar, value = 26.100000.

问题是该列只有一个不同的值,即 26.1。我不明白为什么在将其转换为 varchar 时显示错误!

最佳答案

您的错误是由 26.1 中的句号触发的。

您已应用此命令:

cast(kpi as varchar(3))

首先:将转换从 varchar(3) 更改为 varchar(4)(以获取句号后的第一个值)

所以你会得到:

此行将值 26.10000000 转换为 26.1

那么你应用的varchar(26.1)不正确!

Varchar 类型只需要整数值作为大小。

为什么应用最后一个 varchar?我认为你必须删除外部 varchar 并只保留强制转换函数

关于sql - Sql Server 2000 中类型的算术溢出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22296974/

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