使用c#向数据库中添加数据

本文关键字:添加 数据 数据库 使用 | 更新日期: 2023-09-27 18:09:31

我目前正试图使用c#将数据添加到访问数据库(保存为mdb)这是我当前的代码:

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private OleDbConnection bookConn;
        private OleDbCommand oleDbCmd = new OleDbCommand();
        private String connParam = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:'Users'Alex'Desktop'Project'example.mdb;Persist Security Info=False";

        public Form1()
        {
            bookConn = new OleDbConnection(connParam);
            InitializeComponent();
        }
        public void add()
        {
            try
            {
                bookConn.Open();
                oleDbCmd.Connection = bookConn;
                oleDbCmd.CommandText = "INSERT INTO Student (StudentID, Module) VALUES ('"+ this.textBox1.Text +"','"+ this.textBox2.Text +"');";
                oleDbCmd.CommandType = CommandType.Text;
                int temp = oleDbCmd.ExecuteNonQuery();
                if (temp > 0)
                {
                    MessageBox.Show("Added");
                }
                else
                {
                    MessageBox.Show("Failed");
                }
                bookConn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            add();
        }

    }
}

当我运行这段代码时,我得到错误消息: INSERT INTO语句中的语法错误。

当我和其他例子比较时,我不知道我做错了什么,它似乎是正确的。

如果您能帮助解决这个问题,我将不胜感激。

使用c#向数据库中添加数据

Module为保留字。如果可能/可行的话,重命名字段。如果您必须将其作为字段名,请将其括在INSERT语句中的方括号中。

oleDbCmd.CommandText = "INSERT INTO Student (StudentID, [Module]) VALUES ('"+ this.textBox1.Text +"','"+ this.textBox2.Text +"');";