插入/创建SQL数据库值

时间:2015-03-21 18:57:14

标签: sql database

First Name 
Phone Number
Email 
Address 

对于上述值,

是什么
Type
Length
Collation
Index

为什么,以及 - 有什么指导我可以用来为自己确定这些答案吗?谢谢!

2 个答案:

答案 0 :(得分:0)

这在某种程度上取决于数据库平台和基本要求。这些通常都是nvarchar或varchar类型。根据您的要求,您最了解合适的长度。对于整理,您通常可以使用默认值,但这取决于您的情况。我建议阅读索引来解决你需要的索引。

我同意其他人的观点,你应该对开始SQL做一些阅读。我还建议只是实现一些东西,你可以随时改变它。您将从尝试它并了解您需要解决的问题中学到很多东西。

祝你好运!

答案 1 :(得分:0)

  

对于名称,我应该使用varchar / text / tinytext / blob吗?什么是典型的名称长度?

  • 如果您只是支持"正常"西欧/英文名称,然后(非Unicode)varchar类型应该
  • 如果您需要支持阿拉伯语,希伯来语,日语,中文,韩语或其他亚洲语言,请选择 Unicode 字符串类型来存储这些字符。那些通常每个字符使用2个字节,但如果您需要支持非欧洲语言和字符集,它们是唯一可行的选项。

至于长度:选择一个合理的价值,但不要使用varchar(67)varchar(91)varchar(55)等等 - 尝试解决一些问题"默认"长度,如varchar(20)(适用于电话号码或邮政编码等),varchar(50)代表名字,varchar(100)代表姓氏/城市名称等。尝试选择一些长度,并使用那些

  • 电子邮件的最大长度为255个字符,如RFC文档中所定义
  • Windows文件系统路径(包含路径的文件名)具有260个字符的Windows限制

使用这些知识来调整"你的字符串长度。我建议反对只使用blob类型/ TEXT / VARCHAR(MAX)用于所有内容 - 这些类型用于非常长的文本 - 谨慎使用它们,它们经常伴随由不太理想的访问机制和因此性能缺陷。

索引:一般情况下,不要过度索引你的表 - 大多数情况下,开发人员的表上往往会有太多索引,而不是完全理解以及如何使用(或不使用)。插入,更新和删除数据时,每个索引都会导致维护开销 - 索引不是免费的,如果您真的知道自己在做什么并且看到整体性能优势,那么只使用它们 整个系统)添加一个。