연구소의 이름이 고유한지 확인하기 위해 프런트 엔드 코드를 사용하지 않고도 수정하려는 SQL Server 데이터베이스 테이블이 있습니다. 모든 삽입에 대한 SQL 코드 기반의 Linq를 설정합니다.다른 열을 기반으로 한 SQL 고유 열
CREATE TABLE [dbo].[institution]
(
[institutionID] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY,
[typeID] [tinyint] NOT NULL REFERENCES [dbo].[institutiontype]([institutiontypeID]),
[name] [varchar](255) NOT NULL UNIQUE,
[cityID] [int] NULL REFERENCES [dbo].[city]([cityID]),
[stateID] [int] NULL REFERENCES [dbo].[stateprovince]([stateID]),
[countryID] [int] NULL REFERENCES [dbo].[country]([countryID]),
[createby] [int] NOT NULL REFERENCES [dbo].[ipamuser]([ipamuserID]),
[createdatetime] [datetime] NOT NULL DEFAULT (GETDATE()),
[modifyby] [int] NULL REFERENCES [dbo].[ipamuser]([ipamuserID]),
[modifydatetime] [datetime] NULL,
[dataversion] [int] NOT NULL DEFAULT (0)
)
문제가되면, institutionname가 cityID, stateID과 countryID가 동일한 경우에만 고유해야 :
는 여기에 내가 설정에 노력하고 새로운 테이블입니다. 같은 이름이 다른 도시, 주 또는 국가에 존재할 수있는 시대가 있기 때문에 고유로 institutename으로 테이블을 설정하면 필요를 충족시키지 못합니다. 나는 당신은 당신의 테이블에 복잡한 제약 조건을 작성해야이
이 RDBMS는 무엇입니까? 태그를 추가하여 mysql, postgresql, sql-server, oracle 또는 db2 중 어느 것을 사용하는지 지정하십시오. –
내용과 태그 모두 SQL 데이터베이스라는 것을 알았습니다. – mattgcon
@mattgcon : ** 모든 ** 관계형 DBMS는 "SQL 데이터베이스"입니다. SQL은 DBMS 제품이 아닌 쿼리 언어입니다. 그러나 비표준 SQL에 대한 질문은 SQL Server (T-SQL) –