SQL数据库中哪个类型可以存储负数? 如果不能存储,用什么方法才能存储?
数据库中一般的数字类型都可以存储负数,如int,numeric,decimal等。
工具:sqlserver 2008 R2
步骤:
1、以int类型为例,首先创建一个表:
2、在表中分别插入正数、负数和零。
3、执行后结果:
大型文本数据可以采用文本或图形二进制的数据类型:
1、TEXT
TEXT数据类型用于存储大量文本数据,其容量理论上为1 到2的31次方-1 (2, 147, 483, 647)个字节,在实际应用时需要视硬盘的存储空间而定。
SQL Server 2000 以前的版本中,数据库中一个TEXT 对象存储的实际上是一个指针,它指向一个个以8KB (8192 个字节)为单位的数据页(Data Page)。 这些数据页是动态增加并被逻辑链接起来的。在SQL Server 2000 中,则将TEXT 和IMAGE 类型的数据直接存放到表的数据行中,而不是存放到不同的数据页中。 这就减少了用于存储TEXT 和IMA- GE 类型的空间,并相应减少了磁盘处理这类数据的I/O 数量。
2、NTEXT
NTEXT数据类型与TEXT.类型相似不同的,是NTEXT 类型采用UNICODE 标准字符集(Character Set), 因此其理论容量为230-1(1, 073, 741, 823)个字节。
3、IMAGE
IMAGE 数据类型用于存储大量的二进制数据Binary Data。其理论容量为2的31次方-1(2,147,483,647)个字节。其存储数据的模式与TEXT 数据类型相同。通常用来存储图形等OLE Object Linking and Embedding,对象连接和嵌入)对象。在输入数据时同BINARY数据类型一样,必须在数据前加上字符“0X”作为二进制标识。
将图片直接以二进制的形式存入数据库,如果查询频繁,图片大而多,不建议这样做,首先数据会比较大,再者查询,重新转化为图片 将浪费时间和资源;
一般的方法都是存储图片的路径,图片上传到服务器;只要数据类型的长度够用就行Varchar 类型就可以,Access 用 备注类型;比如一些网站的在线编辑器 什么的, <table></table><img /> 这些标签 实际上 就是以文本的形式 保存,从数据库 取出,页面 就显示对应的HTMl 形式!
不是数据类型的问题,bigint存储从-2^63 (-9223372036854775808)到2^63-1(9223372036854775807) 范围内的数字。存储大小为 8 个字节。但是在你取值的时候,因为数据类型是bigint的,程序会自动把你数据转换成int类型,你的数据106594712998的范围超出int的最大范围,所以程序会自动截取,最后出现-779469402。所以在获取值的时候应该改为:result.getLong()取值。