2011-09-20 2 views
2

특정 기본 키 (문자열 변수)가 이미 테이블에 있는지 확인하고 그렇지 않으면 새 레코드를 삽입하지 않으면 C#을 사용하여 기존 값을 새 값으로 업데이트하면됩니까? INSERT .. 올바른 키 구문을 수정 하시겠습니까?

나는이

MySqlCommand cmd2 = new MySqlCommand("INSERT INTO mapdisplay  
    (ID,Distance) 
    VALUES 
    (@r,@c,) 
    ON DUPLICATE KEY UPDATE mapdisplay 
    (Distance) 
    VALUES 
    (@c,)", conn); 

을 시도하지만 구문이 잘못 생각합니다.

+0

왜 당신이 당신의 자신의 게시물을 고의로 파괴된다? – Johan

답변

1
INSERT INTO mapdisplay  
    (HexID,FlightNo,Lat,Lon,Alt,Course,Groundspeed,Verticalrate,Distance) 
VALUES (@r,@c,@f,@t,@w,@q,@u,@e,@y) 
ON DUPLICATE KEY UPDATE 
    FlightNo = @c 
    ,Lat = @f 
    ,Lon = @t 
    ,Alt = @w 
    ,Course = @q 
    ,Groundspeed = @u 
    ,Verticalrate = @e 
    ,Distance = @y; 

이 링크의 마지막 예를 살펴 보겠습니다 :
http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html

관련 문제