sql-server – 为什么还有varchar数据类型?
我的许大都据库都将字段界说为varchars.自从我在美国糊口和事变(个中独一存在的说话是“美国人”)以来,这并没有太大的题目. 在行使数据库约莫5年之后,我发明我最终碰着了varchar字段的有限性题目,我必需修改我的字段以将数据存储为nvarchars.在必需对表举办另一次更新之后,将varchar字段转换为nvarchar,我只是想到了 – 为什么我们如故这样做?我好久以来就抉择将我的全部新文本字段界说为nvarchar而不是varchar,这是我10年前在学校时从我的教科书中学到的. 它是2011年,客岁有一个新的SQL Server版本.当我们可以/应该行使nvarchar时,为什么我们继承支持varchar数据范例? 我知道常常有人以为nvarchars是varchars的“两倍大”,因此存储空间的行使也许是维持varcars的一个争论. 可是,本日的用户可以界说他们的nvarchars,以便将数据存储为UTF-8而不是默认的UTF-16,假如他们想节减存储空间的话.假如这是首要必要的话,这将应承8位编码,同时担保插入到其DB中的有数的2-8字节字符不会粉碎任何对象. 我错过了什么吗?有没有充实的来由声名为什么在已往15到20年间没有改变? 办理要领> varchar事变对付很多欧美说话(挪威语,丹麦语,德语,法语,荷兰语等)来说已经足够好了,也许会受到一些清算题目的影响>在SO varchar vs nvarchar performance上看到这一点nvarchar具有严峻的机能影响 >与处理赏罚日期MDY和DMY对比,这是微不敷道的 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |