数据库中字符串长度,设置长短大小会不会影响性能

数据库中字符串长度,设置长短大小会不会影响性能,第1张

设计数据库时,很注重字段类型长度,因为书上说,会有性能问题,因为char比varchar速度要快很多,所以能用固定长度的就不要用变长字段,比如身份z号就可以使用CHAR(18),而不应该使用VARCHAR(18)。 Nvarchar占的空间要比varchar大,所以确定是英文时,就不要使用Nvarchar。 主键如果能用tinyint就不要用int,能用int就不要用GUID,节省空间速度快。不太关注数据库字段类型及长度,因为经常发生数据库字段设置过小的问题,或要改变类型如果使用了多个存储过程对一个表增改,当类型或字段长度变化时,就不得不去更改那些存储过程,如果漏掉哪个,程序执行结果也许就是错的。如:字段长度变长时,没有更新存储过程字段长度,程序照常执行,不会报错,存储过程会自动从长的字符串里截取他所支持的长度插到数据库里

如果你的SQL是SQL2000varchar最长长度可以是8000,

如果是SQL2005以上版本可以支持varchar(max),最长可达2G的字段容量数据

你可以试试,也许你的1024还是不够。

是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于有八位, 也表示一些计算机编程语言中的数据类型和语言字符。

字符可以分为中文字符,英文字符、数字。中文字符(中文输入下的汉字和特殊字符都包含)占两个字节。英文字符(大写字母和小写字母)占一个字节。数字也是占一个字节。

看你表中的数据长度,建议字段类型设为varchar(M),里面的数值可以设置大一点,VARCHAR可以保存可变长度的字符串。其中M代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中,不会浪费存储空间。

LONG数据类型,最大可以存储2G。

特性:

1、LONG 数据类型中存储的是可变长字符串,最大长度限制是2GB。

2、对于超出一定长度的文本,基本只能用Oracle数据库里LONG类型来存储,数据字典中很多对象的定义就是用LONG来存储的。

3、LONG类型主要用于不需要作字符串搜索的长串数据,如果要进行字符搜索就要用varchar2类型。

4、很多工具,包括SQLPlus,处理LONG 数据类型都是很困难的。

5、LONG 数据类型的使用中,要受限于磁盘的大小。

限制:

1、一个表中只能包含一个 LONG 类型的列。

2、不能索引Oracle数据库里LONG类型列。

3、不能将含有LONG类型列的表作聚簇。

4、不能在SQLPlus中将LONG类型列的数值插入到另一个表格中,如insert into …select。

5、不能在SQLPlus中通过查询其他表的方式来创建LONG类型列,如create table as select。

6、不能对LONG类型列加约束条件(NULL、NOT NULL、DEFAULT除外),如:关键字列(PRIMARY KEY)不能是 LONG 数据类型。

7、LONG类型列不能用在Select的以下子句中:where、group by、order by,以及带有distinct的select语句中。

8、LONG类型列不能用于分布查询。

9、PL/SQL过程块的变量不能定义为LONG类型。

10、Oracle数据库里LONG类型列不能被SQL函数所改变,如:substr、instr。

以上就是关于数据库中字符串长度,设置长短大小会不会影响性能全部的内容,包括:数据库中字符串长度,设置长短大小会不会影响性能、SQL Server数据库字段的长度、数据库里字段长度单位是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9707837.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存