我刚刚开始使用SQL Server,我让实体框架代码首先创建我的数据表。这是其中一个表的SQL:
CREATE TABLE [dbo].[UserProfile] (
[UserId] INT IDENTITY (1, 1) NOT NULL,
[UserName] NVARCHAR (MAX) NULL,
PRIMARY KEY CLUSTERED ([UserId] ASC)
);
我注意到“dbo”,但我不确定这意味着什么。这类似于存储在master数据库中的数据吗?现在我想手动删除/创建表而不是让EF这样做。
有人能告诉我是否有更好的方法来创建表格。我应该用dbo以外的东西创建它们吗?我也可以在我的SQL Server中创建多个数据库,然后将我的表放在那里吗?
答案 0 :(得分:0)
dbo
代表“数据库所有者”。它只是SQL Server中的默认架构。 EF代码默认情况下首先使用dbo
架构。如果您想覆盖,请参阅:
How can I stop Entity Framework 5 migrations adding dbo. into key names?
[模式用于对对象进行分组。例如,Report
架构可能包含用于报告的只读视图。]