sql 关于查询时 出现的 从数据类型 varchar 转换为 numeric 时出错 的解决方法。

出现这种问题 一般是查询时出现了 varchar 转 numeric 时出了错  或varchar字段运算造成的

解决方法:

让不能转的数不转换就可以了

sql的函数有个isNumeric(参数) 用来转换数字 如果成功反回1 不成功 则反回0

例:

select case when isNumeric(字段)=0 then 0 else 字段运算 end from 表名

declare @参数 varchar(32)
set @参数=‘abc‘
select  case when isNumeric(@参数)=0 then 0 else @参数 end 

set @参数=‘123‘
select  case when isNumeric(@参数)=0 then 0 else @参数 end
时间: 2024-11-06 03:43:04

sql 关于查询时 出现的 从数据类型 varchar 转换为 numeric 时出错 的解决方法。的相关文章

从数据类型 varchar 转换为 numeric 时出错.

如果说你的数据库字段是varchar,但是存储的数据是数值,在出报表时需要转成int或numeric时,无论怎么样都报错. 错误信息: 消息 8114,级别 16,状态 5,第 1 行 从数据类型 varchar 转换为 numeric 时出错. 解决方法: 可以在条件中,加一句:isnumeric(字段)=1 原文地址:https://www.cnblogs.com/Anders888/p/10450003.html

Python包的相对导入时出现“ ‘Parent module ' not loaded, cannot perform relative import”的解决方法

在练习Python中package的相对导入时,即 from . import XXX 或者 from .. import XXX 时会遇到这样两个错误: SystemError: Parent module '' not loaded, cannot perform relative import 和 ValueError: attempted relative import beyond top-level package 其实这两个错误的原因归根结底是一样的:在涉及到相对导入时,packa

服务器直接关机,再开机,硬重启时把数据库搞坏了,状态为“可疑”的解决方法

服务器放的网站都正常,就是远程连不上,着急改点东西,就让机房的人把服务器重启了一下,那边一般都是直接关机,再开机,硬重启. 之前也一直没有出现过异常,但今天硬重启了以后,发现网站出错,一看原来是数据库状态为“可疑”,不能用了,真是吓我一跳,第一次遇到这种问题. 在网上搜了一下,找到解决方法,管用,挺好的,记录一下. 首页把iis及一些连数据库的服务停掉,80和1433端口在防火墙里面也禁止连接,意思就是不让访问,要不会影响执行速度. 把DbName换成坏掉的数据库名,当前数据库选Master,步

SQL去除数据库表中tab、空格、回车符等特殊字符的解决方法

原文:SQL去除数据库表中tab.空格.回车符等特殊字符的解决方法 按照ASCII码, SELECT char(64) 例如64 对应 @,则 SELECT REPLACE('[email protected]', CHAR(64), 'kk'); 则结果为 abckkqq.com 依此类推, 去掉其他特殊符号,参考ASCII码对照表, 去掉tab符号为 select REPLACE('要替换的字符或列名',char(9),'替换的目标字符') 去掉空格符号为 select REPLACE('要

MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES)解决方法

本人配置:系统64位win10,MySQL8.0.16 错误 :ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES) 从上面这段英文的意思来看,可以这样分析,第一:Access denied(拒绝访问):第二:using password:NO/YES.这里这个using password 的是是否输入了密码,输入了就表示YES,没有就输出NO. 根据网上查了很多资料,出现Acces

IN 查询时出现ORA-01795:列表中的最大表达式数为1000解决方法

问题描述: SQL进行IN查询时出现:java.sql.SQLException: ORA-01795: 列表中的最大表达式数为 1000 解决办法: 问题原因是:SQL进行IN查询时,IN中的数据量不能超过1000条. 例如:select * from student where id in ('S1','S2'...........) 如果in后面数据量过多的话就会报错. 解决方法是:用 or关键字 如:select * from student where id in('S1','S2',

安卓(android)建立项目时失败,出现Android Manifest.xml file missing几种解决方法?(总结中)

安卓(android)建立项目时失败.出现AndroidManifest.xml file missing几种解决方法?(总结中) Eclipse新建项目.遇到这种问题.注意例如以下: 1.文件名称最好不要用中文. 2.文件夹也不要用中文. 3.这个不会出错,但出于程序编写习惯.第一个字母最好为大写.

SQL SERVER 查询整个数据库中某个特定值所在的表和字段的方法

SET NOCOUNT ON;DECLARE @sql VARCHAR(1024) DECLARE @table VARCHAR(64) DECLARE @column VARCHAR(64) DECLARE @value VARCHAR(64)  set @value='14799059407'CREATE TABLE #t (     tablename VARCHAR(64),     columnname VARCHAR(64) )  DECLARE TABLES CURSOR FOR

SQL Server 2008 修改安装路径后安装出错的解决方法

1.安装时如果修改安装路径后报错 例如想把“C:\Program Files\Microsoft SQL Server” 修改为“D:\Program Files\Microsoft SQL Server” 错误的详细信息是:"The INSTANCESHAREDWOWDIR command line value was not specified. This value must be specified when the INSTANCESHAREDDIR value is specifie