【发布时间】:2010-11-20 00:51:07
【问题描述】:
使用 .NET 3.5 项目,我有一个从 MySQL 表填充的 DataTable。该表包含一个我需要搜索的“电子邮件”列。我正在显式设置主键,以下代码可以正常工作,直到我在表中获得 422 行或更多行。
object[] searchfor = new object[] { row["email"] };
DataColumn[] pk = new DataColumn[] { dtAccounts.Columns["email"] };
dtAccounts.PrimaryKey = pk;
match = dtAccounts.Rows.Find(searchfor);
我以为第 422 条记录中可能存在一些不良数据,但已证实并非如此。我得到的错误是“表没有主键”,它显然有。
【问题讨论】:
-
我刚刚在我手动创建的包含 500 个条目的表上测试了您的代码,但没有收到错误。在此范围之外仔细检查您的代码。
-
如果它没有主键,那就不是表! - 一些 SQL 大师 :-)
标签: c#