小编M A*_*ifi的帖子

varchar 性能影响

之前已经问过这个问题(在 SQL Server 2008 中使用 varchar 的速度影响),但答案不够详细,令我满意。诚然,这不是当前的问题,主要是针对我的教育。

但是,我将尝试将其作为我正在做的一些当前数据库模式工作的具体示例;

选项 A

CREATE TABLE [VMware].[TblHostSystem](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    <snip/>
    [PowerStateID] [int] NOT NULL
)

ALTER TABLE [VMware].[TblHostSystem]  WITH
CHECK ADD  CONSTRAINT [FK_TblHostSystem_TblPowerState]
FOREIGN KEY([PowerStateID])
REFERENCES [VMware].[TblPowerState] ([ID])
GO

CREATE TABLE [VMware].[TblPowerState](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [PowerState] [varchar](50) NOT NULL
)
Run Code Online (Sandbox Code Playgroud)

选项 B

CREATE TABLE [VMware].[TblHostSystem](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    <snip/>
    [PowerState] [varchar](50) NOT NULL
)
Run Code Online (Sandbox Code Playgroud)

如果我选择了选项 B(正如模式的前任作者所做的那样),由于主机的功能会经常变化,这会产生什么样的流失?

一些我认为是真实的陈述,

  1. Varchar 存储在 MSSQL 2008 上的同一行/页中。
  2. Varchars 没有填充?

所以我的问题是,当将第二个示例中的 …

performance sql-server-2008 varchar

6
推荐指数
1
解决办法
1508
查看次数

标签 统计

performance ×1

sql-server-2008 ×1

varchar ×1