mssql或mysql数据库中怎么存储大段文字呢(1000个中文字符以上)

mssql或mysql数据库中怎么存储大段文字呢(1000个中文字符以上),第1张

朋友,据我所知varchar字段类型已经够用了,char类型其长度是固定的,在创建表时就指定了,

但是varchar类型的长度是可变的,在建表的时候就制定了最大长度,其最大值可以取:0~65535之间的任意值(长度可以再0到最大值之间) 而且在这个最大范围内,使用多少则分配多大的空间,例如varchar(100),并不是每条记录都要占用100个字节哦!! 最后强调:varchar类型实际占用的空间为字符串的实际长度加1 如varchar(10):字段 ‘123’,他占的内存字节是4(3+1),而char(10)则占用了10个字节。 全手工,希望朋友采纳

对于大篇幅的文本字段,一般推荐用text和blob数据类型定义字段, 有时候不必在于一点空间的消耗,只要我们在数据库优化做好就够了

需要定义成字符型,一般可用char、varchar、nchar、nvarchar等,具体需要看实际需求。

这几种类型的比较:

CHAR

CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。

VARCHAR

存储变长数据,但存储效率没有CHAR高,如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么"+1"呢?这一个字节用于保存实际使用了多大的长度。

从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。

NCHAR、NVARCHAR

这两种从名字上看比前面三种多了个"N"。和char、varchar比较起来,nchar、nvarchar最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。

所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar

不能准确的翻译,而使用拼音或缩写也不直观,不如直接使用英文。

2、在简历的、快速开法的(低成本仅供演示的)项目中,往往对数据字典没什么特别的要求,也无需考虑稳定性、迁移性等。使用中文可以方便修改逻辑结构模型,方便SQL语句设计,而且将来可以随时改为英文字段名。

优点:

1、不必考虑命名规范

2、很清晰的知道我们要 *** 作的字段,看起来简直一目了然。--当然如果数据库被其他人进入也是一目了然,安全性差一点。

3、页面显示的时候无需转换。

4、添加、更改字段属性,无需调整永久字段。 --关于这一点,我并没有理解。若有人明白,请帮助下我,万分感谢。

缺点:

1、编写时中文的“,”和英文的“,”,中文的全角半角等切换太麻烦,很容易出问题。

2、看起来有点Low,也容易出现打错列名。--介于智能输入法的智能提示及我们国家语文的博大精深。

3、中文储存预英文储存有差异,所以一些系统视图中可能会有一些性能或者维护上的影响。合并列的时候很麻烦。

4、兼容性差。如多语言环境下、多种数据库情况下,兼容性差。在Java中,是不支持中文列名的,它会直接导致你的 *** 作不成功。

总的来说,选用中文表名列名弊远大于利。所以为了避免不必要的麻烦和莫名其妙的错误,其他场景下还是选用英文为好。

但我们需要注意的是:

1、一定要命名规范。

2、要避免一些名称与关键字冲突。

3、考虑界面友好,页面显示一定要显示中文。

以上就是关于mssql或mysql数据库中怎么存储大段文字呢(1000个中文字符以上)全部的内容,包括:mssql或mysql数据库中怎么存储大段文字呢(1000个中文字符以上)、数据库中对于存储汉字和各种符号的字段应该定义为什么类型、数据库名是中文,需要注意什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/10182763.html

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

发表评论

登录后才能评论

评论列表(0条)

保存