1

ビジュアル C# プロジェクトがあり、ボタンを押したときに MS Access データベースにデータを挿入しようとしています。コードは次のとおりです。

private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                OleDbDataAdapter adapter=new OleDbDataAdapter();
                adapter.InsertCommand = new OleDbCommand();
                adapter.InsertCommand.CommandText =
                     "insert into Candidati values ('" + maskedTextBox1.Text.Trim() + "','" + textBox1.Text.Trim() + "', '" + textBox2.Text.Trim() + "', '" + textBox3.Text.Trim() + "','" + Convert.ToDouble(maskedTextBox2.Text) + "','" + Convert.ToDouble(maskedTextBox3.Text) + "')";
                con.Open();
                adapter.InsertCommand.Connection = con;
                adapter.InsertCommand.ExecuteNonQuery();
                con.Close();
                MessageBox.Show("Inregistrare adaugata cu succes!");
                maskedTextBox1.Text = null;
                maskedTextBox2.Text = null;
                maskedTextBox3.Text = null;
                textBox1.Text = null;
                textBox2.Text = null;
                textBox3.Text = null;
                maskedTextBox1.Focus();
            }
            catch (AdmitereException exc)
            {
                MessageBox.Show("A aparut o exceptie: "+exc.Message, "Eroare!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

接続文字列は次のとおりです。

private static string connectionString;
        OleDbConnection con;
        public AddCandidati()
        {
            connectionString = "Provider=Microsoft.JET.OLEDB.4.0;Data Source=Admitere.mdb";
            con = new OleDbConnection(connectionString);
            InitializeComponent();
        }

フォームはどこAddCandidatiにありますか。データがデータベースに保存されません。なぜですか? プロジェクト フォルダーに .mdb ファイルがあります。私が間違っていることは何ですか?ボタンを押しても例外はありませんでした。

4

1 に答える 1

-1

挿入コマンドが間違っています。最初に列の名前を指定する必要があり、次にそれらの列のそれぞれに値を指定します。

INSERT INTO tablename (column1, column2, column3) VALUES ('value1', 'value2', 'value3')
于 2010-06-13T11:41:51.637 に答える