cet*_*t51 0 sql-server primary-key
我这里有一个小场景,我认为使用复合主键是一个很好的解决方案。我在 SSMS 中这样做。下面是创建表的代码:
CREATE TABLE [PSDesk].[dbo].[Local](
[UserID] [varchar](10) NOT NULL,
[FullName] [varchar](50) NOT NULL,
[ComputerName] [varchar](15) NOT NULL,
[IPAddress] [varchar](50) NOT NULL,
[NETFramework] [varchar](50) NOT NULL,
[ComputerModel] [varchar](50) NOT NULL,
[UDrive] [varchar](50) NOT NULL,
primary key (UserID, ComputerName)
)
Run Code Online (Sandbox Code Playgroud)
我希望UserID
和ComputerName
列是唯一的,这意味着 UserID 和 ComputerName 的每个组合只有一个记录。这是获得我正在寻找的解决方案的好方法吗?我没有太多经验,所以我只是在寻找建议,我只是使用我的 google-fu 把它放在一起
那个语法正确吗?是的。您还可以在之后使用一些不同的语法选项创建 PK,但这会构建。
但是这个问题有很多答案。这个问题有很多问题。“这是一个好主意吗?” 嗯,这取决于——这是基于意见和情况的,所以如果没有用更具体的问题稍微缩小一点,这个问题就可以结束了。
当您将某物定义为主键时,您是在说明这是描述一行且仅描述一行的事实或事实集。
因此,对于该表的外观,仅从数据库设计的角度来看,UserID 和 ComputerName 的组合似乎就足够了。
不过还有其他问题。问题不在问题中,而是诸如:
只是一些思考的食物。这个问题可能有很多答案。这就是为什么我不能 100% 确定它会持续,但至少现在有一些想法。
归档时间: |
|
查看次数: |
630 次 |
最近记录: |