2011-09-13 78 views
0

我需要更新表中的各個字段。如何更新僅提交的字段?

問題第一部分:我怎樣才能發送必要的參數?我能做到這一點在JavaScript象下面這樣:

myUpdateFunction({tableID: 45, personFirstName: 'Blah'}); 
    // and then 
    myUpdateFunction({tableID = 48, personFirstName: 'Blah', personLastName: 'Blah'}); 

問題第2部分:如何處理這些參數,並建立SQL查詢?有沒有智能方法存在,或者我應該只使用if..else塊?

P.S:我使用SQL的緊湊版本4。

   string sql = @"UPDATE [personList] 
       SET 
        [email protected] 
        [email protected] 
        [email protected] 
       WHERE [email protected]"; 


       cmd = new SqlCeCommand(sql, cn); 
       cmd.Parameters.AddWithValue("@personID", personID); 
       cmd.Parameters.AddWithValue("@personFirstName", personFirstName); 
       cmd.Parameters.AddWithValue("@personLastName", personLastName); 
       cmd.Parameters.AddWithValue("@personPhoto", personPhoto); 


       cmd.ExecuteNonQuery(); 
+0

你有一些代碼嗎?我們需要知道如何訪問數據庫,例如linq2sql或實體框架。 – hcb

+1

請嘗試http://msdn.microsoft.com/en-us/library/bb383977.aspx或http://msdn.microsoft.com/en-us/library/bb397696.aspx或http:// msdn .microsoft.com/en-us/library/w5zay9db.aspx – Burimi

+0

第1部分:C#中的命名參數和可選參數http://msdn.microsoft.com/en-us/library/dd264739.aspx –

回答

2

這些都是你的SQL查詢:

UPDATE TableName 
    SET personFirstName='Blah' 
    WHERE tableID= 45 

    UPDATE TableName 
    SET personFirstName='Blah' AND personLastName='Blah' 
    WHERE tableID= 48 

不能幫你的JavaScript ...對不起!