2013-01-23 5 views
2

데이터베이스 테이블 스키마과 같이되어 있는지 여부를 확인합니다.MySQL은 자동 업데이트

CREATE TABLE `stackoverflow`.`automatic` (
    `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , 
    `values` VARCHAR(200) NOT NULL , 
    `counts` BIGINT NOT NULL 
) ENGINE = InnoDB;

이제 데이터베이스를 치지 않고 mysql에서 데이터가 자동으로 업데이트 될 때마다 카운트를 업데이트하고 싶습니다. 내 말은

는 내가 그 행을 선택하고 이전 값을 가져온 다음 하나를 increament 수 있습니다 알고 있지만, 내 관심사입니다 MySQL은 같은 일을 처리하는 어떤 방법이 있는지.

나는 코드를 시도하지 않았다. 나는 단지 그들이 그것에 대해 아무것도 알고 있다면 거기에 전문가 알고 싶어. 내가 마감 실행하고 있습니다으로 내가하지 싶어 긴 방법을 사용하고 난 MySQL은 이미 지금 나를 도울 수있는 일이 있다면 그것은 멋진 것이다라고 생각했다.

감사합니다.

+7

당신은 [트리거]를 사용할 수 있습니다 (http://dev.mysql.com/doc/refman/5.0/en/triggers.html)에 대한 이 목적 – ppeterka

+0

@ppeterka는 업데이트 테이블 필드를 트리거 할 수 있습니다 ..? –

+0

할 수 없다면 제안하나요? 제 이전 의견의 링크에있는 문서를 읽으십시오. 그리고 Google은 훌륭한 사례가 가득합니다. – ppeterka

답변

1

당신은 당신의 업데이트 쿼리에서 할 수있는 것은 그 자체

UPDATE `stackoverflow`.`automatic` set values='xyz', counts=(counts+1) where id=1;