如何在数据库中找得自己想要的数据?急急急!

fesco 2003-02-24 06:06:51

DataColumn[] keys=new DataColumn [1];
keys[0]=thisDataSet .Tables [datatable].Columns[dataId];
thisDataSet .Tables [datatable ].PrimaryKey =keys;


DataRow findRow=thisDataSet .Tables [datatable].Rows.Find(VarName);
编译是出现 这些列当前不具有唯一值。后来发现是我表中没有唯一值的列
但我的表可以根据两列莱选出需要的行比如
A列中存在2个相同的变量如“种植区域”
但这两行中的B列中的值有时不样的,如一个是水稻,一个是棉花。
我现在想根据两个参数(种植区域,水稻)把
那一行给找出来,请问该怎么做?
小弟谢谢先
...全文
111 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
onepence 2003-03-01
  • 打赏
  • 举报
回复
如果是多列(比如两列)的话那么怎么用两个参数来查找
DataRow findRow=thisDataSet .Tables [datatable].Rows.Find(??)
括号里不能有两个参数啊?


觉得用 select * from tablename where column1=value1 and column2=value2 比较简单
fesco 2003-02-25
  • 打赏
  • 举报
回复
SqlDataAdapter DataAdapter1 = new SqlDataAdapter("SELECT * FROM 事实表 WHERE 所在模块 = 品种选择" ,myConnection);
SqlCommandBuilder thisBuilder=new SqlCommandBuilder(DataAdapter1 );
DataSet thisDataSet=new DataSet ();
DataAdapter1 .Fill (thisDataSet ,datatable);
执行到这一步就出错。问题出在 WHERE 所在模块 = 品种选择" 我把它去掉就可以通过,
请问这是怎么回事?
xuzhenhua21 2003-02-25
  • 打赏
  • 举报
回复
DataTable dt=new DataTable();

DataColumn[] pk=new DataColumn[2];
pk[0]=dt.Columns["种植范围"];
pk[1]=dt.Columns["种植种品"];
dt.PrimaryKey=pk;//DataTable的主键是一个数组,当然可以是多列了
fesco 2003-02-24
  • 打赏
  • 举报
回复
把这两个列一起做为主键可以吗?能否详细点,比如举个例子
cwj007 2003-02-24
  • 打赏
  • 举报
回复
关注
lbx1979 2003-02-24
  • 打赏
  • 举报
回复
也许你可以用datareader来做
xuzhenhua21 2003-02-24
  • 打赏
  • 举报
回复
1:
你可以把这两个列一起做为主键,
2
或者
if([datatable].Rows[i][j].ToString=="种植区域"
&&[datatable].Rows[i][j].ToString="水稻")
这样也可以,
Find()方法要求必须有主键
redflute 2003-02-24
  • 打赏
  • 举报
回复
你用sql 语句不行么?

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧