MSSQL2000表字段内容填写要求
MSSQL2000表字段内容填写要求
在表trader_materialcode
有字段列 (本来列的字段类型为VARCHAR(240)) ,前提不能修改。
zd1,zd2,zd3,zd4,zd5,zd6,zd7,zd8,zd9,zd10,zd11,zd12
我想在列内容中录入的是数值型的内容,在触发器中判断,是否为数值型。
不知道如果判断录入的内容是否为数值类型数据,请问有相关函数吗?
[解决办法]
select isnumeric('abc') 不是数字,isnumeric('23') 是数字;
[解决办法]
ISNUMERIC ( expression )
[解决办法]
isnumeric()
[解决办法]
/*网上经常有些博文说isnumeric不可靠。例如:http://blog.csdn.net/cityeremite/article/details/2154781例如:http://www.cnblogs.com/kokyu/archive/2012/07/23/2604492.html等等很多...我用SQL SERVER 2005做个测试。*/select @@version/*Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 2)*/--> 测试数据: @Tdeclare @T table (col varchar(10))insert into @Tselect '2.1' union allselect '2.1-' union allselect '2,111' union allselect '+21' union allselect '+2.1' union allselect '-2.1' union allselect '-22' union allselect '2-2' union allselect '234a234' union allselect '111aaa' union allselect 'a1'select * from @T where ISNUMERIC(col)=1/*col----------2.12,111+21+2.1-2.1-22*/--说明isnumeric 是可以判断正负号和千分号和小数点的。