2017-07-25 57 views
0

我有一個程序可以加載數據庫文件,但只能將數據插入到新表中。我的問題是如何檢查數據庫文件是否與數據庫中插入的數據庫文件相同,如何拒絕它,只是給出一個消息「數據存在」。檢查vb.net中是否存在SQL Server數據庫

我的計劃是創建一個if exists查詢,但它似乎不起作用或者我的代碼不起作用。順便說一下這個表沒有id /主鍵。

"IF EXISTS(SELECT COUNT(*) FROM TABLE1) " & vbCrLf & 
"BEGIN" & vbCrLf & 
    "SELECT * FROM TABLE1" & vbCrLf & 
"END" & vbCrLf & 
"ELSE" & vbCrLf & 
"BEGIN" & vbCrLf & 
    "INSERT INTO TABLE1 SELECT * FROM TABLE1_TEMP" & vbCrLf & 
"END" 
+0

歡迎來到Stack Overflow!有關編寫優秀問題的提示,請訪問[如何提問](https://stackoverflow.com/help/how-to-ask)。如果您對該網站有任何疑問,可以訪問[幫助中心](https://stackoverflow.com/help)或訪問[元堆棧溢出](https://meta.stackoverflow.com/) – CodingNinja

+0

https: //stackoverflow.com/questions/108403/solutions-for-insert-or-update-on-sql-server – andy

回答

0

如果您沒有主鍵,那麼您應該選擇將作爲您的密鑰的字段,然後將其與您要插入的新數據進行比較。

例如:

INSERT INTO DB 

SELECT 'a','b' FROM DB 

WHERE field1 + field2 <> 'a' + 'b' 

這將檢查DB(Field 1和域2)相同的數據,你要插入一個b,如果沒有那麼一個b會被插入

note:如果您的字段是整數,那麼您應該先將它轉換爲字符串。

相關問題