PDA

View Full Version : مشکل با پارامتر در سی شارپ



vahidth
یک شنبه 28 آبان 1391, 21:37 عصر
سلام
من یه پایگاه داده ساختم و یه جدول و در سی شارپ وقتی میخوام اطلاعاتی رو save کنم این ارور میاد؟
اینم از جدول ها
code_person
name
family
bed
best
95184

mhq1368
یک شنبه 28 آبان 1391, 21:42 عصر
سلام
خطاش مشخص نیست

vahidth
یک شنبه 28 آبان 1391, 21:45 عصر
سلام داداش گلم خوبی95187

mhq1368
یک شنبه 28 آبان 1391, 21:51 عصر
سلام مرسی
دادش شما خوبید

ببینید احتمالا یکی از فیلداتون ازنوع صحیحه (int) اینجا هم باید convert.toint16 بشه
حالا نمیدونم کدومشه

برسی کنید
البته میتونید تو خود دیتابیس و جدولتون id رو اتوماتیک بزارید تا این مشکلات رو نداشته باشین

vahidth
یک شنبه 28 آبان 1391, 21:59 عصر
داداش اینجوری تو پایگاه داده تعریف کردم
code_person=int
name=nvarchar
family=nvarchar
bed=numeric
best=numeric

mhq1368
یک شنبه 28 آبان 1391, 22:07 عصر
ببینید شما برای اون دوتای آخر کد زیر رو برای تبدیل بنویسید




Convert.ToDecimal(textbox4.text)

vahidth
یک شنبه 28 آبان 1391, 22:07 عصر
نمیدونم والا یه فیلم آموزشی بود گفت برای بدهکار(bed) پستانکار (best) استفاده کن از نوع numric
چیکار کنم داداش منم موندم

mhq1368
یک شنبه 28 آبان 1391, 22:09 عصر
حالا این کد رو بنویسید ببینم چی میشه؟

vahidth
یک شنبه 28 آبان 1391, 22:15 عصر
این ارور رو میده95192

mhq1368
یک شنبه 28 آبان 1391, 22:19 عصر
ببینم شما تو تکست باکس چی مینویسید (دقیق بنویسید برام)

vahidth
یک شنبه 28 آبان 1391, 22:21 عصر
اجرا نمیشه داداش که چیزی بنویسم
اینجوری وارد میکنم
100
ali
hosini
5000
2000

mhq1368
یک شنبه 28 آبان 1391, 22:26 عصر
نه شما باید به صورت اعشاری بنویسید
یعنی بنویسید

5000.00
واسه دوتای آخری

ببین یا اینجوری

5000.0

mhq1368
یک شنبه 28 آبان 1391, 22:29 عصر
واسه اطلاعات بیشتر

http://barnamenevis.org/showthread.php?194709-%D9%86%D9%88%D8%B9-%D8%AF%D8%A7%D8%AF%D9%87-numeric-%DA%86%DB%8C%D8%B3%D8%AA-%D9%88-%DA%86%D9%87-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87%E2%80%8 F%D8%A7%DB%8C-%D8%AF%D8%A7%D8%B1%D8%AF%D8%9F

vahidth
یک شنبه 28 آبان 1391, 22:31 عصر
اینم عکس بزرگ از کدها95198

اوبالیت به بو
یک شنبه 28 آبان 1391, 22:43 عصر
درود بر شما

شما باید نوعی رو که در هنگام ارسال پارامتر ارسال می کنید معادل با نوعی باشه که در بانک اطلاعاتی تعریف کردید. به نظر من بهتره همون نوع float یا اگر خیلی می خواید هزینه کنید decimal رو در پایگاه داده خودتون در نظر بگیرید. اگر براتون ممکنه این لینک رو نگاه کوتاهی داشته باشید بد نیست:


http://msdn.microsoft.com/en-us/library/ms187752.aspx

mhq1368
یک شنبه 28 آبان 1391, 22:45 عصر
جالبه من کد شما رو که مینویسم مشکلی نداره



راستی
numeric(18,0)
هست

vahidth
یک شنبه 28 آبان 1391, 22:48 عصر
همینجوری که من مینویسم شما هم مینویسید

vahidth
یک شنبه 28 آبان 1391, 22:49 عصر
یدونه از دوباره درست میکنم بدهکار و بستانکار رو از چه نوعی بدم
float یا int

mhq1368
یک شنبه 28 آبان 1391, 22:53 عصر
دقیقا" همون کدایی که نوشتین رو من نوشتم
البته بدون



convert.todecimal

البته فکرنکنم به این ربطی داشته باشه چون شمااولش هم اینروننوشته بودین وخطا میداد

mhq1368
یک شنبه 28 آبان 1391, 22:59 عصر
یدونه از دوباره درست میکنم بدهکار و بستانکار رو از چه نوعی بدم
float یا int

چون میخواین اعشاری باشه باید از نوع float بگبرید

vahidth
یک شنبه 28 آبان 1391, 23:06 عصر
از نوع float گرفتم درست شد البته یه پایگاه دیگه درست کردم فکر کنم مشکل یا از پایگاه بود یا از numeric