我是使用Visual Basic Community 2015学习C#和MySql的新手,我试图制作简单的CRUD,但是我在运行程序并尝试向MySql Table输入数据时感到困惑,因为它始终显示消息


  MySql.Data.dll中发生了类型为'MySql.Data.MySqlClient.MySqlException'的未处理异常


附加信息:


  您的SQL语法有误。检查与您的MariaDB服务器版本相对应的手册,以获取在'Siswa,Total Biaya SPP,Sisa Bayar SPP,Keterangan附近使用的正确语法)


有什么解决办法吗?

public partial class Crud : Form
    {
        MySqlConnection conn = new MySqlConnection("Server=localhost;User Id=root;Password='';Database=db_csharp1");
        MySqlDataAdapter adapter = new MySqlDataAdapter();
        MySqlCommand command = new MySqlCommand();
        public DataSet ds = new DataSet();

    public Crud()
    {
        InitializeComponent();
    }

    private void Crud_Load(object sender, EventArgs e)
    {
        GetRecords();
    }

    private void btnTambah_Click(object sender, EventArgs e)
    {
        ds = new DataSet();
        adapter = new MySqlDataAdapter ("INSERT INTO siswa (NIS,Nama Siswa,Total Biaya SPP,Sisa Bayar SPP,Keterangan) VALUES ('"+textNIS.Text+"','"+textNamaSiswa.Text+"','"+textBiayaSPP.Text+"','"+textSisaBayar.Text+"','"+textKeterangan+"')", conn);
        adapter.Fill(ds,"siswa");
        MessageBox.Show("Added!");
        textNIS.Clear();
        textNamaSiswa.Clear();
        textBiayaSPP.Clear();
        textSisaBayar.Clear();
        textKeterangan.Clear();
        GetRecords();
    }
    private void GetRecords()
    {
        ds = new DataSet();
        adapter = new MySqlDataAdapter("select * from siswa", conn);
        adapter.Fill(ds, "siswa");

        dataGridView1.DataSource = ds;
        dataGridView1.DataMember = "siswa";
    }

最佳答案

列名称中有空格。在列名称中使用`。

INSERT INTO siswa (`NIS`,`Nama Siswa`,`Total Biaya SPP`,`Sisa Bayar SPP`,`Keterangan`)

10-08 19:51