다중 값으로 설정된 DICT가 있습니다.U2 UniVerse : 다중 값 필드 업데이트
Correlatives are illegal for UPDATE, column "Blah"
가 어떻게 다중 값 필드의 특정 속성을 업데이트 할 수 있습니다 : TCL을 열고, 그리고 UPDATE DICT.FILE SET Blah = 'Y'
문을 수행 할 때, 나는 다음과 같은 오류가 발생합니다?
다중 값으로 설정된 DICT가 있습니다.U2 UniVerse : 다중 값 필드 업데이트
Correlatives are illegal for UPDATE, column "Blah"
가 어떻게 다중 값 필드의 특정 속성을 업데이트 할 수 있습니다 : TCL을 열고, 그리고 UPDATE DICT.FILE SET Blah = 'Y'
문을 수행 할 때, 나는 다음과 같은 오류가 발생합니다?
다중 값 데이터베이스의 연관은 기술적으로 SQL에서 상호 작용할 때 다른 테이블로 간주됩니다. 예를 들어 INV와 같은 인보이스 파일이 있고 DICT는 다음과 같습니다.
DICT INV 08:16:43 08-01-16 Page 1
Type &
Field......... Field. Field........ Conversion.. Column......... Output Depth &
Name.......... Number Definition... Code........ Heading........ Format Assoc..
@ID D 0 INV 10L S
CustNum D 1 5R S
PartNum D 2 8R M LineI
tem
Quantity D 3 5R M LineI
tem
4 records listed.
>
당신은 당신이 당신과 동료가되도록 PARTNUMBER 원하는 @id 것을 지정되지 않기 때문에 PARTNUMBER를 업데이트하려고하는 명령을 사용할 수있게되지 않을 것이다. 그것을 이해하지 않고 암시 적 외래 키 제약 조건을 실패 였으니 예를 들어, 당신은 ...
UPDATE INV SET PartNumber = 123456;
을 언급하지 않았다.
@ID가 123 인 송장이 있고 PartNumber 및 Quantity를 추가하려는 경우 이와 같은 작업을 수행하기 때문에 UPDATE가 여기에서 사용하려는 명령이 아닐 수도 있습니다.
INSERT INTO INV (@ID, PartNum, Quantity) VALUES (123, 123456, 2);
당신이 명령을 issueing에 의해 INV (123), PartNum 123456의 수량을 업데이트 할 수 있음을 예상 할 수 여기에서
...
UPDATE INV SET Quantity = 7 WHERE @ID = 123 WHEN PartNum = 123456;
을하지만 당신은 시도한다면 우주는 불평 것이 LineItem이라는 연관이 없습니다.
업데이트가 진행되는 한, DICT 파일을 실제로 잘 구성하여 예상대로 작동하게해야합니다. 유니버스 SQL 참조 설명서 (사용자, 참조 및 DBA)를 읽는 것이 좋습니다. Here을 찾을 수 있습니다. 즉, 각 MV 협회의 DICT에 PH 레코드가 필요하며 협회가 안정적인지, 불안정한지 (기본값) 또는 KEY가 있는지 이해하고 싶을 것입니다. 그러나 그것은이 운동을위한 약간 깊은 것입니다.
연관 LineItem에 대한 내 DICT에 PH 레코드를 추가했습니다.
DICT INV 08:38:16 08-01-16 Page 1
Type &
Field......... Field. Field........ Conversion.. Column......... Output Depth &
Name.......... Number Definition... Code........ Heading........ Format Assoc..
@ID D 0 INV 10R S
CustNum D 1 5R S
PartNum D 2 8R M LineI
tem
Quantity D 3 5R M LineI
tem
LineItem PH PartNum
Quantity
5 records listed.
이제 수량을 예상대로 업데이트 할 수있게되었습니다.
>UPDATE INV SET Quantity = 7 WHERE @ID = 123 WHEN PartNum = 123456;
UniVerse/SQL: 1 record updated.
>SELECT @ID, PartNum, Quantity FROM INV WHERE @ID = 123;
INV....... PartNum. Quantity
123 123456 7
1 records listed.
>
이 정보가 도움이되기를 바랍니다.
다중 값 필드를 업데이트하는 또 다른 방법은 UniVerse 편집기 ED
명령을 호출하는 것입니다. TCL의 예를 들면 다음과 같습니다
ED FILENAME RECORDID
는 TCL의 편집기 명령에 대한 자세한 정보를 입력 HELP
를 얻으려면.