謝謝各位 研究了3、4天
似乎沒有一句語法可以達成
目前解法:先SELECT取出ROW,沒有ROW 再insert
if(!OleDbCommand.ExecuteReader().HasRows){
//do insert into
}
感謝各位
※ 引述《jono103 (不說對不起)》之銘言:
: 資料庫名稱:MS Access
: 資料庫版本:2007
: 透過 Microsoft.ACE.OLEDB.12.0 在 C#
: 內容/問題描述:
: 希望Insert 不重覆日期的資料,目前寫入後,無資料,沒Exception。
: 請教各位版大
: GOOGLE爬文
: 已參考此篇
: https://social.msdn.microsoft.com/Forums/zh-TW/0cd6b4e6-4cd9-474a-869b-858a1be
: 61e47/sql-insert-into-access?forum=238
: 以下為我程式用到的語法
: Creat Table 的 語法:
: CREATE TABLE [AAA] (
: [ID] AUTOINCREMENT NOT NULL PRIMARY KEY,
: [TestDate] CHAR(20) NOT NULL UNIQUE,
: [TestValue] NUMBER NOT NULL,
: [TestOther] CHAR(50) )
: Insert 語法如下:
: INSERT INTO [AAA](TestDate, TestValue,TestOther) select DISTINCT
: '2014-10-28',183.5400,'' FROM [AAA] WHERE NOT EXISTS ( SELECT * FROM [AAA]
: WHERE TestDate = '2014-10-28')
: 請問語法有錯嗎?
: PS.一開始打算設為UNIQUE,就可以不用判斷是否重複,但ID依然會累加,
: 不是我希望的,所以我還是要判斷。
: 謝謝各位,請指教。