access_comm.Connection = access_conn;
access_comm.CommandText = "select * from "+str_tablename+"";
search_da.SelectCommand = access_comm;
search_da.Fill(jzh_ds,str_tablename);
MessageBox.Show(jzh_ds.Tables[str_tablename].Rows.Count.ToString());
jzh_dgw.DataMember = str_tablename;
datagridview里只显示了一条记录,但实际上表里有三条记录,哪位知道是为什么?
access_comm.CommandText = "select * from "+str_tablename+"";
search_da.SelectCommand = access_comm;
search_da.Fill(jzh_ds,str_tablename);
MessageBox.Show(jzh_ds.Tables[str_tablename].Rows.Count.ToString());
jzh_dgw.DataMember = str_tablename;
datagridview里只显示了一条记录,但实际上表里有三条记录,哪位知道是为什么?
"select * from "+str_tablename+"";to"select * from ‘"+str_tablename+"’";
查询语法错误 查询子句不完整
jzh_dgw.DataSource=jzh_ds.Tables[str_tablename];
解决了 谢谢 能请教一下原因吗?
DataGridView.DataMember :数据源中 DataGridView 显示其数据的列表或表的名称,指DataSource 中 DataGridView 显示其数据的表或列表的名称。默认为 Empty。注意:
在绑定到包含多个列表或表的数据源时,此属性非常有用。在绑定到包含单个列表或表的数据源时,无需设置此属性。例如,无需设置此属性,即可将 DataGridView 控件绑定到包含单个表的 DataSet。但是,如果 DataSet 包含多个表,则必须将此属性设置为其中某个表的名称。
来源MSDN.....
这段我也看过 不太明白这段话和datagridview对自动对数据的过滤有什么联系 请赐教
jzh_dgw.DataSource=jzh_ds;
jzh_dgw.DataMember=str_tablename;
解决了 谢谢 能请教一下原因吗?
你都没有设置数据源,只设置了一个数据成员,它怎么知道绑定哪个数据源的成员呢?
this.comboBox1.DataSource=ds.Tables["student"];
//设置显示的成员,显示学生的姓名
this.comboBox1.DisplayMember="sname";我觉得DataGridView的DataMember与这里的DispayMember挺相似,这里如果你没有数据源,你只设置一个DispayMember,你说它怎么知道要绑定"student"表中的"sname"字段呢?DataGridView的DataMember主要是用于当数据源(比如dataset)有多个表时,用来切换绑定的表用的..
比如你的DataGridView的数据源设置为一个DataSet(比如ds)..
而ds中可能有多个表,我想显示哪个表的数据,我只需要设置一下DataMember即可...
如果是单表的话可以像我上面写的那样:
search_da.Fill(jzh_ds,str_tablename);
jzh_dgw.DataSource=jzh_ds;
jzh_dgw.DataMember=str_tablename;
但其实没那个必要了..
直接绑定这个单表就可以了...表达能力有限,不知道有没有说清楚...
{
OleDbConnection con = new OleDbConnection("Provider=OraOLEDB.Oracle.1;data source=oracle;user id=butc;password=butc");
OleDbDataAdapter sda = new OleDbDataAdapter("select * from student", con);
DataSet ds = new DataSet();
sda.Fill(ds, "student");
this.dataGridView1.DataSource = ds;
} private void Form1_Load(object sender, EventArgs e)
{
DataBind();
} private void button2_Click(object sender, EventArgs e)
{
this.dataGridView1.DataMember = "student";
}