واضح آرشیو وب فارسی:سایت ریسک: قله بلند16-12-2008, 12:50 PMبا عرض سلام من با استفاده یک وب سرویس، عمل درج در جدول Region از پایگاه داده Northwind را انجام می دهم. راجع به خود وب سرویس سوالی ندارم. ولی به مساله جالبی برخورد کرده ام. قبل از عمل درج، باید کلید اصلی جدول Region پیدا شود و با افزودن یک واحد به آن، RegionID رکورد بعد مشخص شود. همانطور که می دانید، RegionID یک عدد صحیح است. حالا به قطعه کد زیر که از این وب سرویس استخراج شده توجه کنید: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! همانطور که ملاحظه می فرمایید، StrID یک رشته است و این رشته نیز قرار است مقدارش را به RegionID بدهد. حال اگر در خط کد زیر به جای StrID که یک رشته است، intmaxID را که یک عدد صحیح است، قرار دهیم اتفاقی که منجر به غیر منطقی شدن و یا بد کار کردن برنامه شود نمی افتد. چرا؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! مگر نه اینکه RegionID یک عدد صحیح است ، پس چرا در عمل درج فرقی نمی کند که این عدد صحیح به صورت رشته وارد شود و یا به صورت عدد صحیح؟ امیدوارم سوال را قابل درک بیان کرده باشم. قله بلند19-12-2008, 09:22 PMسلام دوستان کسی جوابی برای این سوال می داند؟ به نظر نکته جالبی است _H2_20-12-2008, 11:38 PMسلام کار صحیحی نیست و میتواند مشکل ساز شود ولی اگر کار میکند، احتمالاً به sqlserver مربوط میشود که سعی میکند دیتای دریافتی را به نوع مطلوب خود تبدیل کنید. یک نوع CONVERT یا CAST که به صورت خودکار از طرف sqlserver روی پارامترهای دریافتی انجام شده. قله بلند21-12-2008, 06:58 PMسلام پس آیا رفتار درست این است که به جای StrID رشته ای،intmaxID صحیح رو قرار بدم؟ من از SQL2000 استفاده می کنم و می خواهم این موضوع رو در SQL2005 نیز مورد آزمون قرار بدم. به نظر نتیجه باید جالب باشه. اگر درSQL2005 هم موضوع اینگونه بود، می شه نتیجه گرفت که مشکلی پیش نخواهد آمد؟ _H2_22-12-2008, 02:05 AMسلام پس آیا رفتار درست این است که به جای StrID رشته ای،intmaxID صحیح رو قرار بدم؟ بله، این کار منطقی و اطمینان بخش است. من از SQL2000 استفاده می کنم و می خواهم این موضوع رو در SQL2005 نیز مورد آزمون قرار بدم. به نظر نتیجه باید جالب باشه. اگر درSQL2005 هم موضوع اینگونه بود، می شه نتیجه گرفت که مشکلی پیش نخواهد آمد؟ اگر کار هم کند، باز بهتر است از این دستورات دوری کنید. کد محکم و مستحکمی بنویسید که شکی برای شما ایجاد نکند، طوری که بتوانید قاطع به کد خود اطمینان داشته باشید. از کدنویسی زیاد نترسید. تازه من به شخصه، همان کد خوب شما را هم مستحکم نمیدانم و حداقل کد زیر را پیشنهاد میکنم که نوع دیتا هم صراحتاً مشخص شده باشد. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 372]