代码之家  ›  专栏  ›  技术社区  ›  Sergio Tapia

对于我的数据库中的这个用例,您建议使用什么字段类型?

  •  0
  • Sergio Tapia  · 技术社区  · 14 年前

    我必须有一个表格来保存我大学里的课程信息。

    我应该使用什么内置的Microsoft SQL server数据类型?我将使用Linq2SQL作为ORM。

    3 回复  |  直到 14 年前
        1
  •  1
  •   SQLMenace    14 年前

    varchar nvarchar 对于unicode名称, date 月份和 time 为了时间。那些看起来像 this 是SQL Server类型

        2
  •  1
  •   Eton B.    14 年前
    int for ID
    string for Course_Name
    

    Date for Opening_Month
    Time for Opening_Hour
    
        3
  •  0
  •   AaronLS    14 年前

    如果您只需要月份(不是日期或年份)和时间,那么您可以使用int表示月份,使用time表示时间。您也可以使用DateTime代替,只需制定一个忽略日期和年份方面的约定。

    我推荐nvarchar或varchar作为名字。如果您预计将来可能需要支持可能包含varchar不支持的unicode字符的外语,请使用nvarchar。我会看一看我预期需要的最长的名字,把它的长度加倍,然后四舍五入到最接近的50。所以如果“偏微分方程入门”是48,那么我会把它改成varchar(100)。

    把它做得这么大的目的是考虑到未来的价值。如果我只使用varchar(48)来容纳当前的最大值,我以后可能会有一个大于这个值的coursename,因此必须修改数据库结构和应用程序来容纳这个更大的值!通过使它成为varchar(100),我们有足够的空间为将来可能出现的更大的课程名称。