正在忽略SQL规则
我在SQL数据库上有两个表:正在忽略SQL规则,sql,sql-server,vb.net,Sql,Sql Server,Vb.net,我在SQL数据库上有两个表: MODEL(ID\u MODEL,MODEL,ID\u manu,ID\u CLASS)和CLASS(ID\u CLASS,CLASS) 它们使用ID\u类链接 删除信息的查询有一个none规则,因此当我试图从CLASS中删除一行时,如果ID\u CLASS正在MODEL表中使用,则应该会给出一个错误 但是它被忽视了。它正在从CLASS表中删除CLASS,并且MODEL表中的行将从DataGridView中删除,但它保留在表中 MODEL上的ID\u类选项是一个no
MODEL
(ID\u MODEL
,MODEL
,ID\u manu
,ID\u CLASS
)和CLASS
(ID\u CLASS
,CLASS
)
它们使用ID\u类
链接
删除信息的查询有一个none规则,因此当我试图从CLASS
中删除一行时,如果ID\u CLASS
正在MODEL
表中使用,则应该会给出一个错误
但是它被忽视了。它正在从CLASS
表中删除CLASS
,并且MODEL
表中的行将从DataGridView
中删除,但它保留在表中
MODEL
上的ID\u类
选项是一个notnull
,如下所示:
CREATE TABLE [dbo].[MODEL] (
[ID_MODEL] INT IDENTITY (1, 1) NOT NULL,
[MODEL] VARCHAR (50) NOT NULL,
[ID_manu] INT NOT NULL,
[ID_CLASS] INT NOT NULL,
PRIMARY KEY CLUSTERED ([ID_MODEL] ASC),
UNIQUE NONCLUSTERED ([MODEL] ASC)
);
即使在删除和重新创建关系之后,它仍然会发生
另外还有两个具有类似配置(相同的规则和数据类型)的其他表,它们按照预期工作。每次运行删除查询时,它都会检索一个错误。您必须在dbo上添加外键。模型:
alter table dbo.Model
add constraint FK_Model_Class foreign key (ID_Class) references dbo.Class(ID_Class);
您没有在模型表上定义外键。如果没有外键,您如何在数据库中定义此“规则”?非常感谢,我只在datadesigner上创建了关系。现在开始工作了。