حل مشکل در یک پروژه

alireza_75

Member
سلام
من دارم یه پروژه به زبان c# می نویسم و از sql 2005 هم استفاده می کنم توی پروژه یه فرم دارم که می خوام اطلاعات افراد را در پایگاه داده ذخیره کنم وقتی پروژه رو اجرا می کنم برای فرد اول مشکلی نداره اما برای دومین فرد خطای زیر رو میده:
procdure or function selects has too many arguments specified
مشکل کارم کجاست؟

:-?:-?:-?:-?
 

the_king

مدیرکل انجمن
سلام
من دارم یه پروژه به زبان c# می نویسم و از sql 2005 هم استفاده می کنم توی پروژه یه فرم دارم که می خوام اطلاعات افراد را در پایگاه داده ذخیره کنم وقتی پروژه رو اجرا می کنم برای فرد اول مشکلی نداره اما برای دومین فرد خطای زیر رو میده:
Procdure or function selects has too many arguments specified
مشکل کارم کجاست؟

:-?:-?:-?:-?

ایراد از دستور select ای است که بکار برده اید. تعداد پارامتر هایی که برای select وارد کرده اید بیشتر از
تعاریف آن است.
 

alireza_75

Member
ایراد از دستور select ای است که بکار برده اید. تعداد پارامتر هایی که برای select وارد کرده اید بیشتر از
تعاریف آن است.



ممنون از جوابتون
ولی اصلا این شکلی نیست
آرگمان های جدولم اینان :
sid,sname,lastname,fname,snumber,bdate,ldate,place,grade,study,tahol,swork,address,phone


و stored procdures:

کد:
[SIZE=2][COLOR=#0000ff]ALTER PROCEDURE [/COLOR][/SIZE][SIZE=2]inserttable (@sname [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](20),@lastname [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](50),@fname [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](20), @snumber [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](10),[/SIZE]
[SIZE=2]@bdate [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](10), @ldate [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](10), @place [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](50), @grade [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](20), @study [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](30), @tahol [/SIZE][SIZE=2][COLOR=#0000ff]int [/COLOR][/SIZE][SIZE=2],[/SIZE]
[SIZE=2]@swork [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](50),@address [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](50) ,@phone [/SIZE][SIZE=2][COLOR=#0000ff]nvarchar[/COLOR][/SIZE][SIZE=2](12))[/SIZE]
[SIZE=2][COLOR=#0000ff]AS[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]insert into table1[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]values[/COLOR][/SIZE][SIZE=2](@sname,@lastname,@fname,@snumber,@bdate,@ldate,@place,[/SIZE]
[SIZE=2]@grade,@study,@tahol,@swork,@address,@phone)[/SIZE]
[SIZE=2][COLOR=#0000ff]RETURN[/COLOR][/SIZE]

تابع inserttable هم این شکلی تعریف کردم:
کد:
[SIZE=2][COLOR=#0000ff]private[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]void[/COLOR][/SIZE][SIZE=2] inserttable()[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2]com.CommandType = [/SIZE][SIZE=2][COLOR=#008080]CommandType[/COLOR][/SIZE][SIZE=2].StoredProcedure;[/SIZE]
[SIZE=2]com.CommandText = [/SIZE][SIZE=2][COLOR=#800000]"insertshahid"[/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2][COLOR=#0000ff]try[/COLOR][/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2]com.Connection = con;[/SIZE]
[SIZE=2]con.Open();[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@sname"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 20);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@sname"[/COLOR][/SIZE][SIZE=2]].Value = sname.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@lastname"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 50);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@lastname"[/COLOR][/SIZE][SIZE=2]].Value = lastname.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@fname"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 20);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@fname"[/COLOR][/SIZE][SIZE=2]].Value = fname.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@snumber"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 10);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@snumber"[/COLOR][/SIZE][SIZE=2]].Value = snumber.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@bdate"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 10);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@bdate"[/COLOR][/SIZE][SIZE=2]].Value = blate.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@ldate"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 10);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@ldate"[/COLOR][/SIZE][SIZE=2]].Value = ldate.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@place"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 50);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@place"[/COLOR][/SIZE][SIZE=2]].Value = place.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@grade"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 20);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@grade"[/COLOR][/SIZE][SIZE=2]].Value = vazgrade();[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@study"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 30);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@study"[/COLOR][/SIZE][SIZE=2]].Value = study.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@tahol"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].Int);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@tahol"[/COLOR][/SIZE][SIZE=2]].Value = vaztahol();[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@swork"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 50);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@swork"[/COLOR][/SIZE][SIZE=2]].Value = swork.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@address"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 50);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@address"[/COLOR][/SIZE][SIZE=2]].Value = address.Text;[/SIZE]
[SIZE=2]com.Parameters.Add([/SIZE][SIZE=2][COLOR=#800000]"@phone"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]SqlDbType[/COLOR][/SIZE][SIZE=2].NVarChar, 12);[/SIZE]
[SIZE=2]com.Parameters[[/SIZE][SIZE=2][COLOR=#800000]"@phone"[/COLOR][/SIZE][SIZE=2]].Value = phon.Text;[/SIZE]
[SIZE=2]com.ExecuteNonQuery();[/SIZE]
[SIZE=2]}[/SIZE]
[SIZE=2][COLOR=#0000ff]catch[/COLOR][/SIZE][SIZE=2] ([/SIZE][SIZE=2][COLOR=#008080]Exception[/COLOR][/SIZE][SIZE=2] ex)[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#008080]DialogResult[/COLOR][/SIZE][SIZE=2] d = [/SIZE][SIZE=2][COLOR=#008080]MessageBox[/COLOR][/SIZE][SIZE=2].Show(ex.Message);[/SIZE]
[SIZE=2]result = 2;[/SIZE]
[SIZE=2]}[/SIZE]
[SIZE=2][COLOR=#0000ff]finally[/COLOR][/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2]con.Close();[/SIZE]
[SIZE=2]result = 1;[/SIZE]
[SIZE=2]sname.Text = lastname.Text = fname.Text = snumber.Text = blate.Text = ldate.Text = place.Text = study.Text = swork.Text = address.Text = phon.Text = tahol.Text = grade.Text = [/SIZE][SIZE=2][COLOR=#0000ff]null[/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE]
[SIZE=2]}[/SIZE]

حالا مشکل از کجاست؟:sad:
 
آخرین ویرایش:

Silver PC

Well-Known Member
سلام !

بهتر بود کد ها رو در تگ قرار بدید تا خوانا تر باشه !

موفق باشید
 

جدیدترین ارسال ها

بالا