C#对Access 2007连接与操作

想把数据库表(User)里的数据显示到textbox里,我的操作如下,只是运行时出错了:namespace_005{publicpartialclassForm2:For... 想把数据库表(User)里的数据显示到textbox里,我的操作如下,只是运行时出错了:namespace _005
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}

private DataSet myDS;

private void button1_Click(object sender, EventArgs e)
{
string myConStr = "Provider= Microsoft.ACE.OLEDB.12.0;Data Source=KTV.accdb";
OleDbConnection myCon = new OleDbConnection(myConStr);
try//异常处理语句
{
myCon.Open();
string comStr = "Select * from User";
OleDbDataAdapter myAD = new OleDbDataAdapter(comStr, myCon);
myDS = new DataSet();
myAD.Fill(myDS, "User");
}
catch (ObjectDisposedException ex)
{
MessageBox.Show(ex.Message, "Error");
}
finally
{
//如果Connection是打开的,则关闭
if (myCon.State == ConnectionState.Open)
myCon.Close();
}
this.textBox1.DataBindings.Add("Text", myDS, "User");
}

}
}
错误如下:
展开
 我来答
zhyifei2005
2011-04-24 · 超过15用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:17.9万
展开全部
把User加上[User]试试,在Microsoft 的数据库种中括号“[]”表示限定符,在Access中User是关键字,所以不能直接使用User作为数据表名或字段名,如果使用的话,需要在SQL语句中加上中括号限定,告诉Access这不是一个关键字
追问
已经把表换成singer了,只是点击了button1后textbox里什么都没有显示,表如下:
追答
this.textBox1.DataBindings.Add("Text", myDS, "User");
这一行有问题:
DataBinding.Add(控件属性,数据源,要绑定到的属性):是把数据源的某个属性(列表)绑定到控件的某个属性上。TextBox的"Text"属性应该绑定到一个对象(数据源)的一个属性上。例如:
textBox1.DataBinding.Add("Text",new{Name=myDS.Tables[0].Rows[0]["UserN"].ToString(),UserP=myDS.Tables[0].Rows[0]["UserP"].ToString()},"Name");
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式