• 全部
  • 基础类
  • 应用实例
  • 新技术前沿

数据类型

gagaxiaoyuer 2008-03-03 04:42:38
对数据类型而言运算符无效。运算符为 subtract,类型为 nvarchar。 我现在用的 NVARCHAR 但是我想把两个数相减 我应该改成什么数据类型最好
...全文
57 点赞 收藏 16
写回复
16 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wzy_love_sly 2008-03-03
为啥呢,加我qq,260831750,我看看
回复
gagaxiaoyuer 2008-03-03
大鸟 啊 大鸟 很头痛啊 我用XP 虽然提示丢失 但是能转 现在用2000 死都转不了
回复
忆轩辕 2008-03-03
我靠,字符'a1'能转成数字才见鬼了
回复
wzy_love_sly 2008-03-03
declare @tb table (name varchar(10))
insert into @tb select null
insert into @tb select '123'
insert into @tb select 'a1'

select * from @tb
where isnumeric(name)=0

NULL
a1


用这个查一下,看有转换错误的没
回复
wzy_love_sly 2008-03-03
declare @tb table (name varchar(10))
insert into @tb select null
insert into @tb select '123'
insert into @tb select 'a1'


select cast(name as decimal(18,2)) from @tb


消息 8114,级别 16,状态 5,第 8 行
从数据类型 varchar 转换为 numeric 时出错。
回复
wzy_love_sly 2008-03-03
怎么转的?
多半有不能转换的数据吧
回复
gagaxiaoyuer 2008-03-03
ODBC 错误: [Microsoft][ODBC SQL Server Driver][SQL Server]将数据类型 nvarchar 转换为 numeric 时出错。

那天强制转都还行 !! 今天怎么就不行了
回复
wzy_love_sly 2008-03-03
select cast(大字段 as int)-cast(小字段 as int) from temp1
select cast(大字段 as decimal(18,2))-cast(小字段 as decimal(18,2)) from temp1
回复
wzy_love_sly 2008-03-03
大爷的,先看看书
回复
gagaxiaoyuer 2008-03-03
select * from temp1 cast(读数 as decimal(18,2)) 这样吗?
提示 AS 附近有错误
回复
JiangHongTao 2008-03-03
selec 列 from 表 where isnumeric(列) = 0
找出不能转换的数据,查看是否包含全角,非数字字符等。
还有就是replace(列,' ','')去空格。
回复
wzy_love_sly 2008-03-03
subtract,不是sql

select cast(字段 as int)-cast(字段 as int)
回复
dawugui 2008-03-03
cast(col as decimal(18,2))
cast(col as int)
回复
parss 2008-03-03
如果没有小数的数据就用整型了罗
回复
JiangHongTao 2008-03-03
int 或numeric
回复
gagaxiaoyuer 2008-03-03
因为现在表已经导进去了 用的nvarchar 改成numeric 说改不了
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-03-03 04:42
社区公告
暂无公告