繁体   English   中英

如何在 C# 中使用 INSERT INTO 访问数据库

[英]how to using INSERT INTO in c# for access database

这是我的代码请帮助我

private void button1_Click(object sender, EventArgs e)
    {
        OleDbConnection con = new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|members list.mdb");
        OleDbCommand cmdoledb = new OleDbCommand();
        con.Open();
        OleDbCommand cmd = new OleDbCommand("INSERT INTO Members(name,family,age,Juncture scholarships) values('" + t1.Text + "','" + t2.Text + "','" + t3.Text + "','" + t4.Text + "')",con);
        cmd.ExecuteNonQuery();
        show();
        t1.Text = string.Empty;
        t2.Text = string.Empty;
        t3.Text = string.Empty;
        t4.Text = string.Empty;

    }
    private void show()
    {
        string d;
        OleDbConnection con;
        OleDbDataAdapter adap;
        DataSet ds = new DataSet();
        con = new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|members list.mdb");
        d = "select * from members";
        adap = new OleDbDataAdapter(d, con);
        adap.Fill(ds, "members");
        dataGridView1.DataSource = ds.Tables["members"];
    }

当我使用此代码时,出现此错误

System.Data.dll 中发生类型为“System.Data.OleDb.OleDbException”的未处理异常

附加信息:INSERT INTO 语句中的语法错误。

2件事:

使用参数

当字段名称包含空格时使用方括号

  OleDbCommand cmd = new OleDbCommand("INSERT INTO Members(name,family,age,[Juncture scholarships]) values(@name,@family,@age,@Js)",con);
    cmd.Parameters.AddWithValue("@name",t1.Text);
    cmd.Parameters.AddWithValue("@family",t2.Text);
    ...
    cmd.ExecuteNonQuery();
     ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM