문제

이 스키마가 주어지면 :

Fruits
 - FruitID       INT PK
 - FruitName     NVARCHAR(30)
 - FruitStatusID INT NULL FK: Statuses

Statuses
 - StatusID      INT PK
 - StatusName    NVARCHAR(30)

내가있는 경우 FruitID 손에 (과일 물체가 아닌 int), 어떻게 업데이트합니까? FruitName 그리고 null FruitStatusID 데이터베이스에서 과일 물체를 먼저로드하지 않고?

메모: 이 솔루션 나를 꽤 멀리 데려 오지만 FK 열을 무효화하는 방법을 알 수 없습니다.

C# 또는 VB의 답변, 감사합니다!

도움이 되었습니까?

해결책

이것은 작동하지만 불필요하게 복잡해 보입니다.

''//initialize the values I'm going to null out to something
Dim Tag As Data_Tag = New Data_Tag() With {
  .Data_Tag_ID = DataTagID, 
  .Last_Error_DateTime = New DateTime(), 
  .Last_Error_Message = "", 
  .Last_Error_Severity_Type_ID = -1 }

''//start change tracking
DB.Data_Tags.Attach(Tag)

''//record changes to these properties (must be initialized above)
Tag.Last_Error_DateTime = Nothing
Tag.Last_Error_Message = Nothing
Tag.Last_Error_Severity_Type_ID = Nothing

DB.SubmitChanges()

확실히 더 나은 방법이 있습니다!

(참고 : 이상한 주석 구문은 전적으로 코드 하이 라이거를위한 것입니다. VB 스타일의 주석을 좋아하지 않습니다)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top