问个C#的DATAROW问题
privatevoidstudent_update_Load(objectsender,EventArgse){OleDbConnectionthisConnection...
private void student_update_Load(object sender, EventArgs e)
{
OleDbConnection thisConnection = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0;
Data Source = C:\Users\hp\Desktop\TEMP\论文\论文.mdb"); //连接数据库
OleDbDataAdapter thisAdapter = new OleDbDataAdapter("SELECT * FROM student", thisConnection);
OleDbCommandBuilder thisBuilder = new OleDbCommandBuilder(thisAdapter);
DataSet thisDataSet = new DataSet();
thisAdapter.Fill(thisDataSet, "student");
DataColumn[] keys = new DataColumn[1];
keys[0] = thisDataSet.Tables["student"].Columns["学号"];
thisDataSet.Tables["student"].PrimaryKey = keys;
DataRow findRow = thisDataSet.Tables["student"].Rows.Find(学生成绩管理系统.account.accounts.ToString());
if (findRow != null)
{
DataRow thisRow = thisDataSet.Tables["student"].NewRow();
textBoxStu_Num.Text = thisRow[“学号”].ToString();
textBoxSex.Text = thisRow["性别"].ToString();
textBoxClass.Text = thisRow["班级"].ToString();
textBoxAdd.Text = thisRow["家庭住址"].ToString();
textBoxTel.Text = thisRow["联系电话"].ToString();
}
else MessageBox.Show("测试", "错误");
thisConnection.Close();
}
就是 textBoxSex.Text = thisRow["性别"].ToString();这些语句貌似是错误的,我是想从列的值赋值给控件的TEXT 展开
{
OleDbConnection thisConnection = new OleDbConnection(@"Provider = Microsoft.Jet.OLEDB.4.0;
Data Source = C:\Users\hp\Desktop\TEMP\论文\论文.mdb"); //连接数据库
OleDbDataAdapter thisAdapter = new OleDbDataAdapter("SELECT * FROM student", thisConnection);
OleDbCommandBuilder thisBuilder = new OleDbCommandBuilder(thisAdapter);
DataSet thisDataSet = new DataSet();
thisAdapter.Fill(thisDataSet, "student");
DataColumn[] keys = new DataColumn[1];
keys[0] = thisDataSet.Tables["student"].Columns["学号"];
thisDataSet.Tables["student"].PrimaryKey = keys;
DataRow findRow = thisDataSet.Tables["student"].Rows.Find(学生成绩管理系统.account.accounts.ToString());
if (findRow != null)
{
DataRow thisRow = thisDataSet.Tables["student"].NewRow();
textBoxStu_Num.Text = thisRow[“学号”].ToString();
textBoxSex.Text = thisRow["性别"].ToString();
textBoxClass.Text = thisRow["班级"].ToString();
textBoxAdd.Text = thisRow["家庭住址"].ToString();
textBoxTel.Text = thisRow["联系电话"].ToString();
}
else MessageBox.Show("测试", "错误");
thisConnection.Close();
}
就是 textBoxSex.Text = thisRow["性别"].ToString();这些语句貌似是错误的,我是想从列的值赋值给控件的TEXT 展开
4个回答
展开全部
DataRow findRow = thisDataSet.Tables["student"].Rows[0];
if (findRow != null)
{
textBoxStu_Num.Text = findRow[“学号”].ToString();
textBoxSex.Text = findRow["性别"].ToString();
textBoxClass.Text = findRow["班级"].ToString();
textBoxAdd.Text = findRow["家庭住址"].ToString();
textBoxTel.Text = findRow["联锋中芹系电话"培知].ToString();
}
else MessageBox.Show("测试", "错误");
thisConnection.Close();
/银毕/如果没有东西,说明没有查询到记录。
if (findRow != null)
{
textBoxStu_Num.Text = findRow[“学号”].ToString();
textBoxSex.Text = findRow["性别"].ToString();
textBoxClass.Text = findRow["班级"].ToString();
textBoxAdd.Text = findRow["家庭住址"].ToString();
textBoxTel.Text = findRow["联锋中芹系电话"培知].ToString();
}
else MessageBox.Show("测试", "错误");
thisConnection.Close();
/银毕/如果没有东西,说明没有查询到记录。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可能是这个原因,因为你的数据库数据是空的,然后你使用它的方法。一个空对象,它是没有任何方法可以用的。你用了一个TOSTRING()方法,所以报异常,你在赋值前先作一下判断,看是否有值,有值再取,没有值的话,你根据自己业务来给一个默认值或者是掘信不处理,氏散戚就这歼陵样,希望对你有用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询