据类型 varchar 转换为 numeric 时出错

来源:百度知道 编辑:UC知道 时间:2024/06/22 08:32:15
服务器: 消息 8114,级别 16,状态 5,行 1
将数据类型 varchar 转换为 numeric 时出错。

这是怎么回事?
希望高手指点
具体情况是这样的,我有一个文本文档,里边的每一行是一个电话号码,想把移动的号码提取出来,我刚开始用VC实现的,只不过有点麻烦,现在我把它导入数据库,想在数据库中实现,程序是这样写的
select *
from haoma
where Col001>13400000000;
haoma是表的名称
Col001是列名
可是一执行就出现这个问题

一定是所执行的SQL脚本中有以下的情况:
1、将一个带有非数字的字符存入数值型字段或变量中。
如:
DECLARE @ABC DECIMAL(12,4)
SET @ABC='A3.5'就会出现此错误。
SET @ABC='3.5' 就不会出现此错误。
2.在CONVERT或CAST函数将某字符串转换为数值型数据时,源字符串包含非数字字符,就会报此错误。如:
SELECT CONVERT(DECIMAL(12,4),'A3.5')
3.在逻辑表达式中试图比较一个非数字的字符与一个数值型变量时,会发生该错误,如
SELECT * FROM TABLENAME WHERE 价格>'1000A'
=============================
不如这样:
select *
from haoma
where Col001>'13400000000'