java的啊?
错误提示给你了 :
在将 varchar 值 'sdfsgsf' 转换成数据类型 int 时失败。
Ⅱ sqlserver类型转换:字符串->日期
不知道你的字符串类型的日期是什么样子的,下面有一个例子:
Test_OldTable是包含19990101等nvarchar数据类型的表,
Test_NewTable是包含DateTime数据类型的表
sql语句:
INSERT INTO Test_NewTable(NewDate)
SELECT CAST(OldDate AS DateTime)
FROM Test_OldTable
其他的方法还有很多,给你个链接,看看吧,网上多找找http://..com/question/97171114.html
Ⅲ sqlserver的数据类型
sqlserver的数据类型比较多,常用的包括:
第一大类:整数数据
bit:bit数据类型代表0,1或NULL,就是表示true,false.占用1byte.
int:以4个字节来存储正负数.可存储范围为:-2^31至2^31-1.
smallint:以2个字节来存储正负数.存储范围为:-2^15至2^15-1
tinyint: 是最小的整数类型,仅用1字节,范围:0至此^8-1
第二大类:精确数值数据
numeric:表示的数字可以达到38位,存储数据时所用的字节数目会随着使用权用位数的多少变化.
decimal:和numeric差不多
第三大类:近似浮点数值数据
float:用8个字节来存储数据.最多可为53位.范围为:-1.79E+308至1.79E+308.
real:位数为24,用4个字节,数字范围:-3.04E+38至3.04E+38
第四大类:日期时间数据
datatime:表示时间范围可以表示从1753/1/1至9999/12/31,时间可以表示到3.33/1000秒.使用8个字节.
smalldatetime:表示时间范围可以表示从1900/1/1至2079/12/31.使用4个字节.
第五大类:字符串数据
char:长度是设定的,最短为1字节,最长为8000个字节.不足的长度会用空白补上.
varchar:长度也是设定的,最短为1字节,最长为8000个字节,尾部的空白会去掉.
text:长宽也是设定的,最长可以存放2G的数据.
第六大类:Unincode字符串数据
nchar:长度是设定的,最短为1字节,最长为4000个字节.不足的长度会用空白补上.储存一个字符需要2个字节.
nvarchar:长度是设定的,最短为1字节,最长为4000个字节.尾部的空白会去掉.储存一个字符需要2个字节.
ntext:长度是设定的,最短为1字节,最长为2G.尾部的空白会去掉,储存一个字符需要2个字节.
第七大类:货币数据类型
money:记录金额范围为:-92233720368577.5808至92233720368577.5807.需要8 个字节.
smallmoney:记录金额范围为:-214748.3648至214748.36487.需要4个字节.
第八大类:标记数据
timestamp:该数据类型在每一个表中是唯一的!当表中的一个记录更改时,该记录的timestamp字段会自动更新.
uniqueidentifier:用于识别数据库里面许多个表的唯一一个记录.
第九大类:二进制码字符串数据
binary:固定长度的二进制码字符串字段,最短为1,最长为8000.
varbinary:与binary差异为数据尾部是00时,varbinary会将其去掉
image:为可变长度的二进制码字符串,最长2G.
Ⅳ java中String类型相当于sqlserver中的什么类型
java中的string类型相当于sqlserver中的text类型,表示字符串,其他类型的对应关系,如下图片:
该图为sqlserver与java数据类型对应
Ⅳ sqlserver中如何把字符串转换成数字
SQL Server中的数值类型分为两种,一种是精确的数值类型,具体的数据类型有:bit、tinyint、smallint、int、bigint、smallmoney、money和decimal,这些数据类型能够精确的表明某以数值;另一种是近似的数值类型,具体就是float和real。浮点数据为近似值,因此,并非数据类型范围内的所有值都能精确地表示。x0dx0a有些时候我们需要将这些数值类型转换为字符串类型,用到的转换函数就是cast和convert,这两个函数的作用都是进行类型转换,只不过语法格式不同。据说在转换时还是有一定的区别的,不过我个人更习惯于使用convert函数,应该这个函数一方面更像是个函数的语法,另一方面在做时间和数值转换成字符串时还可以指定转换的格式。x0dx0a对于精确数值的数据类型,转换出来的字符串就是我们存储的数值。比如:x0dx0adeclare @i intset @i=123456789x0dx0aprint 'test:'+convert(varchar(20),@i)x0dx0a输出就是:test:123456789x0dx0a而如果对于近似数值的数据类型,那么可就没有那么简单了。x0dx0adeclare @i floatset @i=123456789x0dx0aprint 'test:'+convert(varchar(20),@i)x0dx0a输出结果:test:1.23457e+008x0dx0a输出的结果是使用科学计数法来表示的,再看看可否通过指定转换样式来指定不使用科学计数法呢?帮助文档中说到float 或 real 转换为字符数据时的 style 值:x0dx0a0(默认值)最大为 6 位数。根据需要使用科学记数法。x0dx0a1 始终为 8 位值。始终使用科学记数法。x0dx0a2 始终为 16 位值。始终使用科学记数法。x0dx0a我们的值是123456789,超过了6位数.所以不管是0还是1,2结果都会使用科学计数法来表示。那么要怎么样才能将我们的数据不转换成科学计数法而输出呢?比较简单的办法就是将近似数据转换为精确数据,然后再将精确数据转换成字符串。x0dx0a同样以上面的例子为例, 进行两次数据类型的转换如下:x0dx0adeclare @i floatset @i=123456789x0dx0aprint 'test:'+convert(varchar(20),convert(int,@i))x0dx0a输出:test:123456789如果是有小数,那么我们要转换出小数位的话,可以转换成decimal,转换出的小数位数在定义decimal时指定。比如要输出4位小数,那么转换代码是:x0dx0adeclare @i floatset @i=123456789.12x0dx0aprint 'test:'+convert(varchar(20),convert(decimal(18,4),@i))x0dx0a输出:test:123456789.1200
Ⅵ sqlserver 中有varchar2类型么,我看他们用这个 nvarchar 类型,为什么呢
SQL SERVER中没有varcahr2类型. nvarchar类型就是按照Unicode编码方式存储字符串。占有两个字节。不管中英文还是其他的文字。使用nvarchar的好处是。你在程序端判断字符串长度就可以不用考虑中英文占用字符数了。直接按照有多少个字的方式判断就OK。
Ⅶ 关于SQLSERVER 字符串类型的行转列,该怎么解决
编写一个函数
create func sum_value(@kid int)
returns varchar(1000)
as
begin
declare @s varchar(1000)
set @s= ' '
select @s+=value+‘,’ from tb where kid=@kid
return @s
end
然后调用
select Kid,sum_value(Kid) from tb group by Kid
Ⅷ sql server中创建表时各个数据类型时什么意思
SQL Server 数据类型分类及含义如下:
1、Character 字符串:
(8)sqlserver字符串类型扩展阅读:
关于SQL数据类型的特征解析:
在 SQL Server 中,每个列、局部变量、表达式和参数都具有一个相关的数据类型。 数据类型是一种属性,用于指定对象可保存的数据的类型:整数数据、字符数据、货币数据、日期和时间数据、二进制字符串等。
当两个具有不同数据类型、排序规则、精度、小数位数或长度的表达式通过运算符进行组合时,结果的特征由以下规则确定:
1、结果的数据类型是通过将数据类型的优先顺序规则应用到输入表达式的数据类型来确定的。 有关详细信息,请参阅数据类型优先级 (Transact-SQL)。
2、当结果数据类型为 char、varchar、text、nchar、nvarchar 或 ntext 时,结果的排序规则由排序规则的优先顺序规则确定。 有关详细信息,请参阅排序规则优先顺序 (Transact-SQL)。
3、结果的精度、小数位数及长度取决于输入表达式的精度、小数位数及长度。 有关详细信息,请参阅精度、小数位数和长度 (Transact-SQL)。
Ⅸ 请问怎样使用asp将sqlserver中的日期型数据转换为字符串型,怎样将字符串型转换为日期型
建议你将数据库中的日期字段改成字符串型。长度建议为14位,即:yyyymmddhhmmss,这样在比较时间时也比较容易运算。同时也非常容易转换成为各种日期格式。如:
'函数:把时间改为字符串yyyymmddhhmmss
function Zhuanhuan_Date(ThisDate)
Zhuanhuan_Date=year(ThisDate)
if month(ThisDate)<10 then
Zhuanhuan_Date=Zhuanhuan_Date&"0"&month(ThisDate)elseZhuanhuan_Date=Zhuanhuan_Date&month(ThisDate)end ifif day(ThisDate)<10 then
Zhuanhuan_Date=Zhuanhuan_Date&"0"&day(ThisDate)elseZhuanhuan_Date=Zhuanhuan_Date&day(ThisDate)end ifif hour(ThisDate)<10 then
Zhuanhuan_Date=Zhuanhuan_Date&"0"&hour(ThisDate)elseZhuanhuan_Date=Zhuanhuan_Date&hour(ThisDate)end ifif minute(ThisDate)<10 then
Zhuanhuan_Date=Zhuanhuan_Date&"0"&minute(ThisDate)elseZhuanhuan_Date=Zhuanhuan_Date&minute(ThisDate)end ifif second(ThisDate)<10 then
Zhuanhuan_Date=Zhuanhuan_Date&"0"&second(ThisDate)elseZhuanhuan_Date=Zhuanhuan_Date&second(ThisDate)end if
end function
'函数:把数据库中读出的时间yyyymmdd hh:mm:ss改为字符串“yyyy年mm月dd日 hh:mm:ss”
Function Date_N2C (ThisDate)
Date_N2C = mid(ThisDate,1,4) & "年" & mid(ThisDate,5,2) & "月" & mid(ThisDate,7,2) & "日"
Date_N2C = Date_N2C&" "&mid(ThisDate,9,2)&":"&mid(ThisDate,11,2)&":"&mid(ThisDate,13,2)
End Function
调用时,将Zhuanhuan_Date(ThisDate)的值写入数据库,对于从数据库中取出的值,用函数Date_N2C (ThisDate)显示出来。
Ⅹ sql server中的怎么把数值型转换为字符串
有两种。
1.转换(int,字段名)
例如:选择convert(int,'3')
选择cast('3'作为int)
一般来说,没有必要将字符串转换为数字类型,如果你需要比较两个字段是相等的,但为字符串类型字段,类型,用“=”来比较这两个值是相等的,SQLSERVER将自动将字符串转换为一个数字,然后比较。
(10)sqlserver字符串类型扩展阅读:
注意事项:
这两个函数都执行强制转换,但是语法不同。据说有一些不同的转换,但我更习惯于使用转换函数,它更像一个函数的语法一方面,可以指定的格式转换,将时间和价值转换为一个字符串。
对于数据类型的确切值,转换后的字符串是我们存储的值。如:
声明@iintset@i=123456789print'test:'+转换(varchar(20),@i)
输出是:test:123456789
对于具有近似值的数据类型,情况就不那么简单了。
声明@ifloatset@i=123456789print'test:'+转换(varchar(20),@i):test:1.23457e+008