无法将数据从C#插入SQL Server

时间:2014-01-31 14:44:06

标签: c# sql sql-server

我想将数据插入.mdf SQL Server文件,但是当我想查看我插入的数据时。它没有发生。我使用本地数据库进行工作。

private SqlConnection connection;
private SqlCommand command;
private string sql;

private void frmNewEmp_Load(object sender, EventArgs e)
{
    string conStr = @"Server=(localdb)\v11.0;AttachDbFilename=|DataDirectory|\Payrolldatabase.mdf;";

    connection = new SqlConnection(conStr);

    if (connection.State == ConnectionState.Closed)
    {
       connection.Open();
    }
}

private void InsertData()
{
    sql = @"INSERT INTO Employee(EID, EName, EAdd, ESSID, ETel, EDatesub, ESalary) VALUES(@id, @name, @add, @ssid, @tel, @date, @sal)";
    command = new SqlCommand(sql, connection);

    command.Parameters.Clear();
    command.CommandText = sql;

    AddParamterValues();

    MessageBox.Show("Add complete");
}

1 个答案:

答案 0 :(得分:6)

您没有在任何地方执行命令。 (假设您已正确附加参数)

你需要

command.ExecuteNonQuery();

此外,您还需要数据库的开放连接。

注意到您正在Load打开连接,然后没有关闭它。这不是做数据库内容的最佳方式,尽可能晚地打开数据库连接并尽早关闭应该是规则。

考虑将您的连接对象封装在using语句中(就像使用命令对象一样),然后将该连接用于命令