作者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
1F:推 hpo14:我猜是 everread 里面没有设定 Primary Key 11/02 03:14
2F:→ pat0307:那请问一下,若我有两个资料行名称,组合起来才是主键 11/02 16:40
3F:→ pat0307:那应该怎麽写 11/02 16:40
4F:→ hpo14:如果原本的资料库里面已经设定好主键,只要在读取的时候 11/03 01:20
5F:→ hpo14:一并把 Scheme 读进来就可以了. 组合式主键跟你上面用法一样 11/03 01:21
6F:→ pat0307:有点不太董耶,请问,我现在有三个资料库名称 11/03 01:48
7F:→ pat0307:sID,meID,news这三个,我目前是还没设定主键 11/03 01:50
8F:→ pat0307:若我想要可以不会出现上面的错,我在资料库里应该怎麽样设 11/03 01:51
9F:→ pat0307:主键,sID和meID混合起来才是主键 11/03 01:53
10F:→ hpo14:看我回的那篇吧.. 11/03 03:18
11F:→ NEETENIN:D="+meID.ToString() + "AND _sID ="+this.sID, con); 11/05 11:07
12F:→ NEETENIN:^^" AND前面少空格? 11/05 11:07