【发布时间】:2020-11-30 11:45:41
【问题描述】:
我有一个包含这些链接的数据库: MCD
我想在“人员”表中添加新值。 我做了这个查询:
INSERT INTO Adresse (NoRue, Addresse, Ville, CP)
VALUES ('420','Rue des Lacs','Paris','75016');
DECLARE @Id1 AS int = @@identity;
INSERT INTO Date (Date)
VALUES (1999-02-21);
DECLARE @Id2 AS int = @@identity;
INSERT INTO Personnel (NomPersonnel, PrenomPersonnel, IdAdresse, IdDate)
VALUES ('Michel','Jean',@Id1, @Id2);
但每次我创建新值时,它都会创建一个新日期。我想知道我是否可以检查日期是否已经存在,如果可以插入 FK Personnel.IdDate。如果注意创建一个新的日期并在 Personnel.IdDate 中插入 FK。
感谢您的宝贵时间。
【问题讨论】:
-
仅供参考 "
INSERT INTO Date (Date) VALUES (1999-02-21);" 不会像你想的那样做。如果您使用较新的日期和时间数据类型,它要么会出错,要么会插入datetime1905-05-31T00:00:00.000:1999-02-21 = 1976 = DATEADD(DAY,1976,'19000101') = 1905-05-31T00:00:00.000。
标签: c++ sql .net sql-server