Дополнительная информация: процедура или функция insertimi имеет слишком много заданных аргументов( процесс вставки C# SQL)
Я работаю с небольшим POS-приложением, но у меня возникла проблема при вставке данных из формы win в базу данных SQL . Чтобы быть более ясным, я получаю такую ошибку "дополнительная информация: процедура или функция insertimi имеет слишком много заданных аргументов."
Что я должен изменить в своем коде C#, чтобы исправить ошибку? Может быть, код цикла, как я получаю данные из datagridview. Если бы кто-нибудь мог мне помочь, насчет этой проблемы.
Спасибо вам всем
Что я уже пробовал:
conn.Open(); SqlCommand cmd = new SqlCommand("insertimi", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Clear(); cmd.Parameters.Add(new SqlParameter("@shenime", txtshenime.Text)); cmd.Parameters.Add(new SqlParameter("@data", DateTime.Now)); cmd.Parameters.Add(new SqlParameter("@kasieri", lbluser.Text)); cmd.Parameters.Add(new SqlParameter("@emri_sh", lblshitesiemri.Text)); cmd.Parameters.Add(new SqlParameter("@niptsh", int.Parse(lblshitesinipt.Text))); cmd.Parameters.Add(new SqlParameter("@adresash", lbladresashitesi.Text)); cmd.Parameters.Add(new SqlParameter("@telefonish", lblshitesitelefon.Text)); cmd.Parameters.Add(new SqlParameter("@emri_b", cmbbleresi.Text)); cmd.Parameters.Add(new SqlParameter("@niptb", lblbleresinipt.Text)); cmd.Parameters.Add(new SqlParameter("@adresab", lblbleresiadresa.Text)); cmd.Parameters.Add(new SqlParameter("@telefonib", lblbleresitelefoni.Text)); cmd.Parameters.Add(new SqlParameter("@nentotali", lblnentotali.Text)); cmd.Parameters.Add(new SqlParameter("@vleratvsh", lblvleratvsh.Text)); cmd.Parameters.Add(new SqlParameter("@zbritja", txtzbritja.Text)); cmd.Parameters.Add(new SqlParameter("@totali", lbltotali.Text)); foreach (DataGridViewRow row in dtgprofatura.Rows) { if (!row.IsNewRow) { cmd.Parameters.Add(new SqlParameter("@barkodi", row.Cells[0].Value)); cmd.Parameters.Add(new SqlParameter("@emertimi", row.Cells[1].Value)); cmd.Parameters.Add(new SqlParameter("@sasia", row.Cells[3].Value)); cmd.Parameters.Add(new SqlParameter("@cmimi", row.Cells[2].Value)); cmd.Parameters.Add(new SqlParameter("@totaliPCS", row.Cells[5].Value)); cmd.Parameters.Add(new SqlParameter("@tvsh", row.Cells[4].Value)); cmd.Parameters.Add(new SqlParameter("@vleratvshpcs", row.Cells[7].Value)); cmd.Parameters.Add(new SqlParameter("@patvshpcs", row.Cells[6].Value)); } } cmd.ExecuteNonQuery(); conn.Close(); clear(); kRIJOToolStripMenuItem.PerformClick(); }И код SP:
ALTER procedure [dbo].[insertimi] @shenime varchar(max), @data datetime, @kasieri varchar(50), @emri_sh varchar(50), @niptsh varchar(50), @adresash varchar(100), @telefonish varchar(50), @emri_b varchar(50), @niptb varchar(50), @adresab varchar(100), @telefonib varchar(50), @nentotali float, @zbritja float, @vleratvsh float, @totali float, @barkodi int, @emertimi varchar(200), @sasia int, @cmimi float, @totaliPCS float, @tvsh float, @vleratvshpcs float, @patvshpcs float as declare @lastId int; insert into tblprofatura (Shenime,Data,Kasieri,Emri_sh,NIPT_sh,Adresa_sh,Telefoni_sh,Emri_b,NIPT_b,Adresa_b,Telefoni_b,Nentotali,Zbritja,VleraTVSH,Totali) values(@shenime,@data,@kasieri,@emri_sh,@niptsh,@adresash,@telefonish,@emri_b,@niptb,@adresab,@telefonib,@nentotali,@zbritja,@vleratvsh,@totali) set @lastId = SCOPE_IDENTITY(); insert into tblproofatura_details(NR_F,Barkodi,Emertimi,Cmimi,Sasia,TVSH,Totali,PaTVSHpcs,VleraTVSHpcs) values (@lastId,@barkodi,@emertimi,@cmimi,@sasia,@tvsh,@totaliPCS,@patvshpcs,@vleratvsh)