谁帮忙看下程序有什么问题 运行问题变量名 '@EntryTime' 已声明。变量名在查询批次或存储过程内部必须唯一 10

privatevoidbtnEntry_Click(objectsender,EventArgse){//定义一个初始值n=0,用于判断后期是否成功插入数据intn=0;... private void btnEntry_Click(object sender, EventArgs e)
{
//定义一个初始值n=0, 用于判断后期是否成功插入数据
int n = 0;
string sql = "insert into T_Cost(EntryTime,Cost,CostCategories,InvoiceID,Customer,Products,HasConfirm,HasRecorded,ConfirmTime,RecordedTime) values (@EntryTime,@Cost,@CostCategories,@InvoiceID,@Customer,@Products,@HasConfirm,@HasRecorded,@ConfirmTime,@RecordedTime)";
//提交时间、费用、费用类别、发票号、客户、产品、是否已经确认、是否已经入账、提交人姓名(当前用户的姓名)
//判断插入的数据是否为空
if (txtEntryName.Text.Trim() == "" || txtCost.Text.Trim() == "" || CBoxCostCate.Text.Trim() == "" || txtInvoiceID.Text.Trim()=="")
{
MessageBox.Show("费用、费用类型、发票号为必填");
return;
}
//向数据库插入参数
SqlParameter[] param ={
new SqlParameter("@EntryName",txtEntryName.Text),// TODO:txtEntryName.Text不能输入 由系统直接调用相关的姓名
new SqlParameter("@Cost",txtCost.Text),//费用
new SqlParameter("@EntryTime",txtEntryTime.Text),//提交时间
new SqlParameter("@CostCategories",CBoxCostCate.SelectedItem),//费用类别
new SqlParameter("@Customer",CBoxConsumer.SelectedItem),//客户
new SqlParameter("@EntryTime",CBoxProducts.SelectedItem),//产品名称
new SqlParameter("@InvoiceID",txtInvoiceID.Text),//发票号
new SqlParameter("@HasConfirm",0),//是否确认
new SqlParameter("@HasRecorded",0),//是否入账
new SqlParameter("@ConfirmTime",0),//是否入账
new SqlParameter("@RecordedTime",0)//是否入账
};
SqlConnection conn = new SqlConnection(connStr);
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
cmd.Parameters.AddRange(param);
n = cmd.ExecuteNonQuery();
conn.Close();
if (n > 0)
{
MessageBox.Show("添加成功!");
}
else
{
MessageBox.Show("添加失败!");
return;
}
//调用Refresh方法,在添加完成数据后 自动刷新并显示新数据
Refresh();
}
这是运行的错误提示:
变量名 '@EntryTime' 已声明。变量名在查询批次或存储过程内部必须唯一。
必须声明标量变量 "@InvoiceID"。
展开
 我来答
NotigerKuiKui
2012-04-05 · TA获得超过2802个赞
知道大有可为答主
回答量:1592
采纳率:76%
帮助的人:459万
展开全部
1. new SqlParameter("@EntryTime",txtEntryTime.Text),//提交时间
new SqlParameter("@EntryTime",CBoxProducts.SelectedItem),//产品名称

检查 "@InvoiceID"在insert 语句里面是否有问题,重新复制粘贴下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友22ad5e3
2012-04-22
知道答主
回答量:10
采纳率:0%
帮助的人:3.2万
展开全部
参数用完必须给他清除, cmd.Parameters.Clear()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式