示例数据库的疑问
以下是示例数据库adventureworks2017的 表 employee
其中 [CurrentFlag] [dbo].[Flag] DEFAULT ((1)) NOT NULL 这里 dbo.flag 啥意思?居然有这样的写法。
还有一个是 [OrganizationNode] hierarchyid NULL,
[OrganizationLevel] AS ([OrganizationNode].[GetLevel]()) NULL
这个一般好像也用处不大。感觉用不大起来。
具体表结构如下:
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[HumanResources].[Employee]') AND type IN ('U'))
DROP TABLE [HumanResources].[Employee]
GO
CREATE TABLE [HumanResources].[Employee] (
[BusinessEntityID] int NOT NULL,
[NationalIDNumber] nvarchar(15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[LoginID] nvarchar(256) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[OrganizationNode] hierarchyid NULL,
[OrganizationLevel] AS ([OrganizationNode].[GetLevel]()) NULL,
[JobTitle] nvarchar(50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[BirthDate] date NOT NULL,
[MaritalStatus] nchar(1) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Gender] nchar(1) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[HireDate] date NOT NULL,
[SalariedFlag] [dbo].[Flag] DEFAULT ((1)) NOT NULL,
[VacationHours] smallint DEFAULT ((0)) NOT NULL,
[SickLeaveHours] smallint DEFAULT ((0)) NOT NULL,
[CurrentFlag] [dbo].[Flag] DEFAULT ((1)) NOT NULL,
[rowguid] uniqueidentifier DEFAULT (newid()) NOT NULL ROWGUIDCOL,
[ModifiedDate] datetime DEFAULT (getdate()) NOT NULL
)
GO