我正在尝试使用 SqlCeCommandBuilder,但我遇到了问题。我正在使用的表有三列。第一个设置为主键,身份打开并设置为递增一。当我创建我的 SqlCeCommand 时,我无法让它执行。我想如果我离开该列,它会自动添加该值,但它返回一个错误,说明命令中的列数必须与表中的列数匹配。因此,如果我将“BillerID”列添加到命令生成器,它会说我需要为其添加一个值。然后当我添加一个值时,它说不能修改“BillerID”列。我究竟做错了什么?
using (SqlCeConnection con = new SqlCeConnection(Properties.Settings.Default.BillsConnectionStringDefault))
{
con.Open();
try
{
using (SqlCeCommand command = new SqlCeCommand(
"INSERT INTO Billers VALUES(@BillerID, @Name, @Type)", con))
{
command.Parameters.Add(new SqlCeParameter("BillerID", 999999));
command.Parameters.Add(new SqlCeParameter("Name", billerName));
command.Parameters.Add(new SqlCeParameter("Type", "0"));
command.ExecuteNonQuery();
}
}
catch(Exception ex)
{
MessageBox.Show(string.Format(ex.Message.ToString()));
}
}