View Full Version : سوال: ذخيره ركورد بدون قرار دادن مقدار در يكي از فيلدهي عددي
سيد مجتبي هاشمي
یک شنبه 27 شهریور 1390, 13:09 عصر
با سلام.
دوستان يه جدول دارم كه ميخوام يه ركورد داخلش ذخيره كنم. چندتا از فيلدهاي اين جدول عددي هستند. كه در زمان ثبت ركورد يكي از اين فيلدهاي عدد نبايد هيچ مقداري داخلش ذخيره بشه يعني بايد خالي باشه. حالا سوالم اينه كه چطور با استفاده از يه ADOTable ميتونم يه ركورد داخل اين جدول ذخيره كنم بدون اينكه فيلد مورد نظر با مقدار پيش فرض صفر پر بشه؟
زماني كه هيچ دستوري هم نمينويسم هم به طور پيش فرض توي اين فيلد صفر قرار ميده. در ضمن اين فيلد حتما بايد از نوع عددي باشه.
حتي با نوشتن دستور زير هم باز همون مقدار صفر رو ذخيره ميكنه.
ADOTable_WL.FieldByName('ip').AsInteger := StrToInt('');
یوسف زالی
یک شنبه 27 شهریور 1390, 15:50 عصر
سلام.
در جدول مربوطه Allow Null را تیک کنید و پارامتر مربوط به آن را در کوئری Null کنید.
یونیت Variants را هم Use کنید.
سيد مجتبي هاشمي
دوشنبه 28 شهریور 1390, 08:12 صبح
ببخشيد همون طور كه در تصوير هم مشخصه همچين گزينه اي وجود نداره.
75478
سيد مجتبي هاشمي
دوشنبه 28 شهریور 1390, 08:21 صبح
پارامتر مربوط به آن را در کوئری Null کنید.
چه طوري؟ مگه دستوري كه تو پست 1 نوشتم درست نيست؟ يا اينكه به جاي اين دستور اصلا هيچ دستوري ننويسيم.
یونیت Variants را هم Use کنید.
از كجا؟ چه طور؟
سعید صابری
دوشنبه 28 شهریور 1390, 08:44 صبح
بهترین و راحت ترین راه اینه که هیچ مقداری به اون فیلد نفرستی
Felony
دوشنبه 28 شهریور 1390, 09:00 صبح
پراپرتی Default Value برای فیلد مورد نظر در اکسس با 0 مقداردهی شده ، اون 0 رو حذف کن .
سيد مجتبي هاشمي
دوشنبه 28 شهریور 1390, 10:18 صبح
بهترین و راحت ترین راه اینه که هیچ مقداری به اون فیلد نفرستی
در پست هاي قبلي گفتم كه اين كار رو هم انجام دادم اما درست نشد.
یوسف زالی
دوشنبه 28 شهریور 1390, 12:29 عصر
دوست من Allow Null رو در جدول تیک کن و به پارامتر Null پاس کن.
سعید صابری
دوشنبه 28 شهریور 1390, 12:40 عصر
در پست هاي قبلي گفتم كه اين كار رو هم انجام دادم اما درست نشد.
خب به خاطر اینه که defaultvalue برابر صفر قرار دادی.همونطور که جناب تاجیک گفتن صفر پا ک کن
یوسف زالی
دوشنبه 28 شهریور 1390, 17:04 عصر
default value برای مواقعی هست که مقداری ارسال نکنیم.
در هر صورت برداشتن تیک مزبور الزامی هست.
Felony
دوشنبه 28 شهریور 1390, 17:26 عصر
دوستان يه جدول دارم كه ميخوام يه ركورد داخلش ذخيره كنم. چندتا از فيلدهاي اين جدول عددي هستند. كه در زمان ثبت ركورد يكي از اين فيلدهاي عدد نبايد هيچ مقداري داخلش ذخيره بشه يعني بايد خالي باشه. حالا سوالم اينه كه چطور با استفاده از يه ADOTable ميتونم يه ركورد داخل اين جدول ذخيره كنم بدون اينكه فيلد مورد نظر با مقدار پيش فرض صفر پر بشه؟
وقتی مقدار Default Value رو حذف کنی دیگه به صورت اتوماتیک در جدول در هنگام درج رکورد در اون فیلد 0 درج نمیشه و اگر در کد بهش مقدار نداده باشی خالی رها میشه .
default value برای مواقعی هست که مقداری ارسال نکنیم.
زماني كه هيچ دستوري هم نمينويسم هم به طور پيش فرض توي اين فيلد صفر قرار ميده. در ضمن اين فيلد حتما بايد از نوع عددي باشه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.