>

Table1의 INSERT 트리거 이전 또는 이후에 TABLE2에서 SELECT를 사용합니다. 선택은 varchar, 날짜 및 정수 값을 가져옵니다. varchar 만 반환됩니다. 다른 모든 값은 NULL로 설정됩니다.

DECLARE d_enl date;
    DECLARE d_liv date;
    DECLARE d_trace_enl date;
    DECLARE d_trace_liv date;
    DECLARE ecart_enl int;
    DECLARE ecart_liv int(8);   
    DECLARE h_min varchar(8);
    DECLARE h_max varchar(8);
SELECT D_ENL, D_LIV INTO d_enl, d_liv FROM refer WHERE K_REFER = NEW.K_REFER;       
SELECT H_LIV_MIN, H_LIV_MAX INTO h_min, h_max FROM refer WHERE K_REFER = NEW.K_REFER;
SELECT ECART_ENL INTO ecart_enl FROM refer WHERE K_REFER = NEW.K_REFER;

K_REFER는 PRIMARY UNIQUE KEY이므로 한 행만 반환됩니다. 모든 필드와 같은 선택, 각 유형에 대한 선택 및 SET var1 = (SELECT Field1 FROM ... WHERE)를 사용하여 변수로 선택을 시도했습니다.

동일한 결과 : h_min 및 h_max (varchar)가 설정됩니다. 다른 변수는 null입니다. 물론, 선택된 레코드에서 필드가 널이 아닙니다.

  • 답변 # 1

    문제는 변수 이름에서 비롯된 것 같습니다. 대소 문자를 구분하지 않는 것 같습니다. 따라서 쿼리는 필드와 이름이 같은 변수에 대해 혼동됩니다.

관련 자료

  • 이전 다른 수준의 PHP로 배열을 구문 분석하는 방법
  • 다음 mercurial - THG 스트립은 작업 디렉토리에서 변경 사항을 유지하지 않습니다