【问题标题】:ExecuteNonQuery: Connection property has not been initialized (access database)ExecuteNonQuery:连接属性尚未初始化(访问数据库)
【发布时间】:2014-01-23 06:00:40
【问题描述】:

我的代码有什么问题?我只想将数据添加到访问数据库中,但它显示ExecuteNonQuery

连接属性尚未初始化。

这很奇怪,因为在其他类似的项目代码中也可以正常工作。

OleDbCommand command = new OleDbCommand();
OleDbConnection connect = new OleDbConnection();
OleDbDataReader reader;

    public Absen()
    {
        InitializeComponent();
    }

    MainForm form_utama;

    private void Absen_Load(object sender, EventArgs e)
    {
        connect.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\Visual Studio Project\Minor baru - back up\Minor baru\Absensi.accdb;Persist Security Info=False;";
    }

    private void button1_Click(object sender, EventArgs e)
    {
        if (idkaryawantxt.Text != "")
        {
            string q = "insert into tableAbsensi (ID,ID_divisi,Waktu,Tanggal) values ('" + idkaryawantxt.Text.ToString() + "','" + iddivisitxt.Text.ToString() + "','" + (DateTime.Now.ToString("hh:mm :")) + "','" + (DateTime.Now.ToString("MM-dd-yyyy")) + "')";
            dosomething(q);
        }
    }

    private void dosomething(String q)
    {
        try
            {
                connect.Open();
                command.CommandText = q;
                command.ExecuteNonQuery();
                connect.Close();
            }
            catch (Exception e)
            {
                connect.Close();
                MessageBox.Show(e.Message.ToString());
            }
    }

【问题讨论】:

    标签: c# visual-studio-2010


    【解决方案1】:

    你没有设置你的Command'sConnection属性

    command.Connection = connect;
    

    在执行你的命令之前,你应该把它设置为错误所说的

    【讨论】:

    • +1 另外不要忘记Dispose所有对象(不使用时的连接和执行后的命令)。
    • 谢谢!你帮帮我~虽然很有趣XD
    猜你喜欢
    • 2012-05-03
    • 2011-07-22
    • 2012-08-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多