Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关系型SQL Server数据库_C#_Sql Server_Html_Css - Fatal编程技术网

C# 关系型SQL Server数据库

C# 关系型SQL Server数据库,c#,sql-server,html,css,C#,Sql Server,Html,Css,我刚刚在这里注册,这是我的第一个问题。我希望我能清楚地解释自己,因为作为一名自学成才的开发人员,我不太会说专业术语 我的问题:我的项目数据库保存了员工信息,有名字、姓氏、职务等。。(静态事物) 当我还想开始收集每个员工的所有打卡和打卡事件时,我的问题就开始了。我想不出一个优雅的方法将这些添加到我当前的数据库中 我对数据库了解不多,但我认为这些东西应该放在完全不同的数据库中,或者放在同一数据库中的不同表中。 不知道哪个是正确答案 另一件事是,这两个数据库或两个表需要以某种方式相互关联。当我从列表中

我刚刚在这里注册,这是我的第一个问题。我希望我能清楚地解释自己,因为作为一名自学成才的开发人员,我不太会说专业术语

我的问题:我的项目数据库保存了员工信息,有名字、姓氏、职务等。。(静态事物)

当我还想开始收集每个员工的所有打卡和打卡事件时,我的问题就开始了。我想不出一个优雅的方法将这些添加到我当前的数据库中

我对数据库了解不多,但我认为这些东西应该放在完全不同的数据库中,或者放在同一数据库中的不同表中。 不知道哪个是正确答案

另一件事是,这两个数据库或两个表需要以某种方式相互关联。当我从列表中选择一名员工[数据来自第一个DB或Tbl]并选择查看该特定员工的时钟事件历史记录[数据来自第二个DB或Tbl]时,我应该看到该员工的时钟输入和输出,而不是其他员工的时钟事件历史记录

一步一步的教程是没有必要的,但赞赏。你能给我一个快速的解释/概述如何做到这一点吗?如果需要,我可以添加更多关于 这个项目

谢谢。

像这样:

CREATE TABLE Employees (
    EmployeeId bigint IDENTITY(1,1) PRIMARY KEY,
    FirstName nvarchar(50),
    LastName nvarchar(50),
    etc
)

CREATE TABLE EmployeeClocks ( -- rename as appropriate
    EmployeeId bigint, -- foreign key
    DateTime datetimeoffset(7),
    ClockInType tinyint, -- values defined by an enum inside your program code

    CONSTRAINT FK_EmployeeClocks_Employees FOREIGN KEY (EmployeeId) REFERENCES Employees (EmployeeId) ON DELETE CASCADE ON UPDATE CASCADE
)
现在有一些疑问:

获取员工的所有打卡信息(假设打卡信息为
ClockInType=1
,打卡信息为
2
):

了解

“你必须在一个数据库中使用两个表,”戴的回答显示了这些表。如果您是数据库新手,只需添加几个词,然后首先阅读有关它的内容,提出设计想法,而不是创建数据库。因为项目完成后很难在数据库中进行更改。
从这里读一些文章


如果您只对开发应用程序的数据库/表感兴趣,那么我建议您删除所有与项目无关的信息。我现在就编辑它。如果你愿意,请批准。顺便说一句,sql server的哪个版本?谢谢“Borat”的编辑,但我很快从“Dai”和“Vikas Rana”那里得到了我想要的答案,以至于我没有机会更改它。这正是我所需要的。因此,我应该做的是创建另一个表,并使用“外键”将这些表相互关联。我想我可以快速谷歌如何做外键,并得到这一点。谢谢大家!太快了!顺便说一句:我试着投票,它说我必须达到15岁才能投票,所以。。。。对不起,没问题。祝你好运,祝你
成功
!陈奎,欢迎你!几分钟内有两个完美答案。波拉特,戴和维卡斯·拉纳。。。我欠你的。现在我在路上开始制作第二张桌子。稍后。虽然需要一些“声誉”来提高投票率,但你可以而且应该接受你满意的答案之一。
 SELECT
     DateTime
 FROM
     EmployeeClocks
     INNER JOIN Employees ON EmployeeClocks.EmployeeId = Employees.EmployeeId
 WHERE
     Employees.FirstName = "Dick" AND
     Employees.LastName = "Butt"