作者pat0307 (pat)
看板C_Sharp
標題[問題] 請問SQL update的問題
時間Sun Nov 2 03:03:52 2008
各位大大好,想請問一個問題
我現在是用VS2005寫行動專案,
裡面有讀到一個資料表everread,這個資料表有一個資料行名稱是news
用來紀錄是否有讀過檔,資料型別為bit
我是下面這樣寫,不過會出現
沒有傳回任何索引鍵資料行資訊的 SelectCommand 不支援 UpdateCommand
動態 SQL 產生。
的錯誤,請問到底哪裡有錯。
SqlCeConnection con = new SqlCeConnection("Data Source=\\map.sdf");
SqlCeDataAdapter hit = new SqlCeDataAdapter("SELECT * FROM everread WHERE _meID="+meID.ToString() + "AND _sID ="+this.sID, con);
SqlCeCommandBuilder hitB = new SqlCeCommandBuilder(hit);
DataSet hitD = new DataSet();
hit.Fill(hitD, "everread");
DataColumn[] keys = new DataColumn[1];
keys[0] = hitD.Tables["everread"].Columns["_sID"];
hitD.Tables["everread"].PrimaryKey = keys;
DataRow findRow1 = hitD.Tables["everread"].Rows.Find(textID.Text.Trim());
if (bool.Parse(findRow1["news"].ToString()) == true)
{
findRow1["news"] = false;
hit.Update(hitD, "everread");
}
con.Close();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.204.21
推 hpo14:我猜是 everread 裡面沒有設定 Primary Key 11/02 03:14
→ pat0307:那請問一下,若我有兩個資料行名稱,組合起來才是主鍵 11/02 16:40
→ pat0307:那應該怎麼寫 11/02 16:40
→ hpo14:如果原本的資料庫裡面已經設定好主鍵,只要在讀取的時候 11/03 01:20
→ hpo14:一併把 Scheme 讀進來就可以了. 組合式主鍵跟妳上面用法一樣 11/03 01:21
→ pat0307:有點不太董耶,請問,我現在有三個資料庫名稱 11/03 01:48
→ pat0307:sID,meID,news這三個,我目前是還沒設定主鍵 11/03 01:50
→ pat0307:若我想要可以不會出現上面的錯,我在資料庫裡應該怎麼樣設 11/03 01:51
→ pat0307:主鍵,sID和meID混合起來才是主鍵 11/03 01:53
→ hpo14:看我回的那篇吧.. 11/03 03:18
→ NEETENIN:D="+meID.ToString() + "AND _sID ="+this.sID, con); 11/05 11:07
→ NEETENIN:^^" AND前面少空格? 11/05 11:07