2017-12-29 4 views
0
나는 테이블에 기존 레코드를 업데이트하기 위해 노력하고있어

, 여기에 테이블 :SQLite는 업데이트되지 기록

여기

enter image description here 내 코드입니다 :

using (SQLiteConnection c = new SQLiteConnection(ConnectionString)) 
{ 
    c.Open(); 
    using (SQLiteCommand cmd = new SQLiteCommand()) 
    { 
     try 
     { 
      string _FINAL_SQL = "UPDATE act_monthly_listings SET loan = " + GRAND_LOAN_TOTAL + " AND interest = " + INTEREST + " AND contr = " + GRANT_CONTRIBUTIONS + " AND payment = " + GRAND_PAYMENTS_TOTAL + " WHERE act = " + act + " AND year = " + year + " AND month = " + month + ";"; 
      cmd.CommandText = _FINAL_SQL; 
      Clipboard.SetText(_FINAL_SQL); 
      cmd.Connection = c; 
      cmd.ExecuteNonQuery(); 
     } 
     catch (Exception ex) 
     { 
      Clipboard.SetText(ex.ToString()); 
     } 

    } 
} 

없음 오류 또는 예외가 발생되고, 하지만 그것은 업데이 트되지 않습니다.

예를 sql :

UPDATE act_monthly_listings SET loan = 60 AND interest = 6 AND contr = 0 AND payment = 100 WHERE act = 93 AND year = 2014 AND month = 3; 

나는 다음과 같은 기록 항목이 업데이트 될 볼 것으로 예상됩니다

enter image description here

+0

무엇합니까'Console.WriteLine (_FINAL_SQL)'인쇄? db에 대해 해당 명령문을 실행하여 누락 된 부분을 확인하십시오. – shahkalpesh

+0

나는 잘못 했어. 아무 것도 보이지 않는다. – kingraphaII

+0

글쎄, 우린 아무것도 잘못 볼 수 없으니 의도 한대로 작동해야한다. 당신이 가지고있는 정보를 우리에게 보여 주시지 않겠습니까? _FINAL_SQL을 표시하고 업데이트 할 것으로 예상되는 데이터베이스의 레코드를 표시하십시오. – oerkelens

답변

3

조회에서, 당신은 사용할 수 없습니다 잘못 "AND"키워드에 쿼리의 SET 부분에서 쉼표 ","를 사용하여 업데이트 할 필드를 구분해야합니다. https://sqlite.org/lang_update.html

귀하의 질의가 있어야한다 :

올바른 UPDATE 문 구문에 대한 설명서를 참조하십시오

UPDATE act_monthly_listings SET loan = 60, interest = 6, contr = 0, payment = 100 WHERE act = 93 AND year = 2014 AND month = 3;