Я хочу, чтобы сохранить данные по кнопке от сохранения:C# и базы данных MS-Access вставив
idbox (текстовое поле) - empbox (COMBOBOX) - jobbox (COMBOBOX) - unitbox (выпадающий) -
destbox (ComboBox) - detectivebox (ComboBox) - statebox (ComboBox) -
investdate (DatePicker) - investresult (текстовое поле)
в таблица investinside же порядка:
ID - EMP - блок - работа - Dest - детективный - состояние - investdate - investresult
я попробовал этот и не было никаких ошибок, но ничего не было сохранено в таблице когда я проверяю ....
Могу ли я узнать, в чем причина?
вот код я попытался
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;
namespace beta_2
{
public partial class Dentry_main : Form
{
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=beta2.mdb;");
OleDbDataAdapter da;
DataSet ds = new DataSet();
OleDbCommand com = new OleDbCommand();
string sql;
public Dentry_main()
{
InitializeComponent();
}
private void Dentry_main_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'beta2DataSet.stateinside' table. You can move, or remove it, as needed.
this.stateinsideTableAdapter.Fill(this.beta2DataSet.stateinside);
// TODO: This line of code loads data into the 'beta2DataSet.detectivestbl' table. You can move, or remove it, as needed.
this.detectivestblTableAdapter.Fill(this.beta2DataSet.detectivestbl);
// TODO: This line of code loads data into the 'beta2DataSet.departments' table. You can move, or remove it, as needed.
this.departmentsTableAdapter.Fill(this.beta2DataSet.departments);
// TODO: This line of code loads data into the 'beta2DataSet.units' table. You can move, or remove it, as needed.
this.unitsTableAdapter.Fill(this.beta2DataSet.units);
// TODO: This line of code loads data into the 'beta2DataSet.employees' table. You can move, or remove it, as needed.
this.employeesTableAdapter.Fill(this.beta2DataSet.employees);
}
private void button1_Click(object sender, EventArgs e)
{
conn.Open();
com.Connection = conn;
sql = "INSERT INTO investinside([id],[emp],[job],[unit],[dest],[detective],[state],[investdate],[investresult])VALUES(@id,@emp,@job,@unit,@dest,@detective,@state,@investdate,@investresult)";
com.CommandText = sql;
com.Parameters.Clear();
com.Parameters.AddWithValue("@id", idbox.Text);
com.Parameters.AddWithValue("@emp", empbox.Text);
com.Parameters.AddWithValue("@job", jobbox.Text);
com.Parameters.AddWithValue("@unit", unitbox.Text);
com.Parameters.AddWithValue("@dest", destbox.Text);
com.Parameters.AddWithValue("@detective", detectivebox.Text);
com.Parameters.AddWithValue("@state", statebox.Text);
com.Parameters.AddWithValue("@investdate", investdatebox.Text);
com.Parameters.AddWithValue("@investresult", investresultbox.Text);
com.ExecuteNonQuery();
MessageBox.Show("success");
conn.Close();
}
private void button3_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
Вы уверены, что вы не скопировать базу данных в папку проекта, когда вы создали этот проект? Visual studio сделает это по умолчанию. Проверьте копии. – Fionnuala
Попробуйте проверить результат с помощью 'int result = com.ExecuteNonQuery();' –
Как задаются свойства файла базы данных. Это ресурс? Установлено ли значение «Копировать, если новый»? – plast1K