2013-12-15 105 views
-3

我需要更新sql表,即如果我有表中的spicific記錄我想更新記錄,如果記錄不存在我需要將它添加到表中。 我該如何實現它?更新sql表

預先感謝您。

+1

你有沒有試過從數據庫獲取數據,如果沒有這樣的記錄存在,做一個插入和更新,否則。您必須嘗試發佈您嘗試的代碼,以便我們可以更好地指導。 – Saravanan

回答

0

如果我正確理解你,你想添加一些列和一些值。您需要使用默認約束ALTER查詢:

ALTER TABLE {TABLENAME} 
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} 
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE} 

或者,如果你想檢查記錄或行是數據可用或不可,如果沒有要插入該行,那麼你需要if not exist

IF NOT EXISTS(SELECT 1 FROM emp WHERE fruits = 'mango') 
    INSERT INTO emp (fruits) VALUES ('mango') 
+0

我不認爲OP想要在其記錄中添加列時,如果_if記錄不存在,我需要將其添加到表中_ – Steve

+0

是的! OP在陳述細節方面並不清楚,所以我增加了兩種可能性。我同意你的意見。 –

0

你試過了嗎?

INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1; 
0

如果要更新數據庫中的記錄,您需要獲取表中記錄的UniqueID。 爲此舉例來說,如果你要更新您的個人信息

Select ID, LastName, FirstName, DateofBirth from PersonalTable 

如果你得到的數據集 獲得ID在ViewState中

UPDATE PersonalTable SET (LastName,FirstName,DateofBirth) = '" + xyz + "', '" + yzx + "', " + 01/01/2013 + " WHERE id= Viewstate("ID") 

,如果你沒有得到使用插入查詢

快樂編碼