使用SQL Server 2005和SP4,我正在设计一个数据库表.
这是表DDL
CREATE TABLE CPSync4D.ProjectProfilerOption
(
ProjectProfilerOptionID INT IDENTITY(1,1) CONSTRAINT PK_ProjectProfilerOption_ProjectProfilerOptionID PRIMARY KEY
,ProjectID INT CONSTRAINT FK_ProjectProfilerOption_Project_ProjectID FOREIGN KEY(ProjectID) REFERENCES CPSync4D.Project(ProjectID) ON DELETE CASCADE
,ProfilerOptionID TINYINT CONSTRAINT FK_ProjectProfilerOption_ProfilerOption_ProfilerOptionID FOREIGN KEY(ProfilerOptionID) REFERENCES CPSync4D.ProfilerOption (ProfilerOptionID)
,ProfilerOptionValue sql_variant NOT NULL
)
Go
Run Code Online (Sandbox Code Playgroud)
profileroptionvalue列可以包含最多30个字符的字符串,整数或十进制值,例如值为"ProfilerValueType",或12.52或20等(不超过两位小数,整数值小于100)
我应该使用sql_variant还是varchar(30)......?我以前从未使用过sql_variant,也不确定在数据库设计方面没有使用任何含义.
使用sql_variant ...与.net代码的任何陷阱